[mapguide-commits] r6204 - in trunk/Tools/Maestro: Maestro.Base Maestro.Base/Commands Maestro.Base/Properties Maestro.Base/Resources Maestro.Editors Maestro.Editors/Common Maestro.Editors/Packaging Maestro.Editors/Properties Maestro.Editors/Resources Maestro.Packaging Maestro.Packaging/Properties Maestro.Shared.UI

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Tue Nov 8 08:43:56 EST 2011


Author: jng
Date: 2011-11-08 05:43:56 -0800 (Tue, 08 Nov 2011)
New Revision: 6204

Added:
   trunk/Tools/Maestro/Maestro.Base/Commands/EditPackageCommand.cs
   trunk/Tools/Maestro/Maestro.Base/Resources/box--pencil.png
   trunk/Tools/Maestro/Maestro.Editors/Packaging/
   trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.cs
   trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.designer.cs
   trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.resx
   trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.cs
   trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.designer.cs
   trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.resx
   trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.cs
   trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.designer.cs
   trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.resx
   trunk/Tools/Maestro/Maestro.Editors/RepositoryIcons.cs
   trunk/Tools/Maestro/Maestro.Editors/Resources/application-browser.png
   trunk/Tools/Maestro/Maestro.Editors/Resources/applications-stack.png
   trunk/Tools/Maestro/Maestro.Editors/Resources/blueprints.png
   trunk/Tools/Maestro/Maestro.Editors/Resources/database-share.png
   trunk/Tools/Maestro/Maestro.Editors/Resources/disk.png
   trunk/Tools/Maestro/Maestro.Editors/Resources/images-stack.png
   trunk/Tools/Maestro/Maestro.Editors/Resources/map.png
   trunk/Tools/Maestro/Maestro.Editors/Resources/printer.png
Modified:
   trunk/Tools/Maestro/Maestro.Base/Maestro.Base.addin
   trunk/Tools/Maestro/Maestro.Base/Maestro.Base.csproj
   trunk/Tools/Maestro/Maestro.Base/Properties/Resources.Designer.cs
   trunk/Tools/Maestro/Maestro.Base/Properties/Resources.resx
   trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.Designer.cs
   trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.cs
   trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.resx
   trunk/Tools/Maestro/Maestro.Editors/Maestro.Editors.csproj
   trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.Designer.cs
   trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.resx
   trunk/Tools/Maestro/Maestro.Packaging/PackageBuilder.cs
   trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.Designer.cs
   trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.resx
   trunk/Tools/Maestro/Maestro.Packaging/ResourceItem.cs
   trunk/Tools/Maestro/Maestro.Shared.UI/CollapsiblePanel.cs
Log:
#1810: Re-instate the package editor which went MIA since Maestro 2.1. Other changes include adding a RepositoryIcons helper class to build consistent image lists. Package Editor and Resource Picker have been modified to use this shared helper class.

Added: trunk/Tools/Maestro/Maestro.Base/Commands/EditPackageCommand.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Base/Commands/EditPackageCommand.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Base/Commands/EditPackageCommand.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,50 @@
+#region Disclaimer / License
+// Copyright (C) 2011, Jackie Ng
+// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// 
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+// 
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+// 
+#endregion
+using System;
+using System.Collections.Generic;
+using System.Text;
+using ICSharpCode.Core;
+using Maestro.Shared.UI;
+using Maestro.Base.Services;
+using Maestro.Editors.Packaging;
+
+namespace Maestro.Base.Commands
+{
+    internal class EditPackageCommand : AbstractMenuCommand
+    {
+        public override void Run()
+        {
+            var wb = Workbench.Instance;
+            var exp = wb.ActiveSiteExplorer;
+            var connMgr = ServiceRegistry.GetService<ServerConnectionManager>();
+            var conn = connMgr.GetConnection(exp.ConnectionName);
+
+            using (var open = DialogFactory.OpenFile())
+            {
+                open.Filter = Properties.Resources.Filter_Mgp_Files;
+                if (open.ShowDialog(wb) == System.Windows.Forms.DialogResult.OK)
+                {
+                    var dlg = new PackageEditorDialog(open.FileName, conn);
+                    dlg.ShowDialog(wb);
+                }
+            }
+        }
+    }
+}

Modified: trunk/Tools/Maestro/Maestro.Base/Maestro.Base.addin
===================================================================
--- trunk/Tools/Maestro/Maestro.Base/Maestro.Base.addin	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Base/Maestro.Base.addin	2011-11-08 13:43:56 UTC (rev 6204)
@@ -237,6 +237,10 @@
                       icon="box__arrow"
                       label="${res:Menu_Package_LoadPackage}"
                       class="Maestro.Base.Commands.LoadPackageCommand" />
+            <MenuItem id="EditPackage"
+                      label="${res:EditPackage}"
+                      icon="box__pencil"
+                      class="Maestro.Base.Commands.EditPackageCommand"/>
         </MenuItem>
         <MenuItem id="Menu_Help"
                   type="Menu"

Modified: trunk/Tools/Maestro/Maestro.Base/Maestro.Base.csproj
===================================================================
--- trunk/Tools/Maestro/Maestro.Base/Maestro.Base.csproj	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Base/Maestro.Base.csproj	2011-11-08 13:43:56 UTC (rev 6204)
@@ -69,6 +69,7 @@
     <Compile Include="Commands\CreatePackageCommand.cs" />
     <Compile Include="Commands\CutCommand.cs" />
     <Compile Include="Commands\EditAsXmlCommand.cs" />
+    <Compile Include="Commands\EditPackageCommand.cs" />
     <Compile Include="Commands\LoadPackageCommand.cs" />
     <Compile Include="Commands\LocalFeatureSourcePreviewCommand.cs" />
     <Compile Include="Commands\LoginCommand.cs" />
@@ -385,6 +386,7 @@
   </ItemGroup>
   <ItemGroup>
     <Content Include="Maestro.Base.addin" />
+    <None Include="Resources\box--pencil.png" />
     <None Include="Resources\Contributors.txt" />
     <None Include="Resources\edit.png" />
     <None Include="Resources\marker.png" />

Modified: trunk/Tools/Maestro/Maestro.Base/Properties/Resources.Designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Base/Properties/Resources.Designer.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Base/Properties/Resources.Designer.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -1,7 +1,7 @@
 //------------------------------------------------------------------------------
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:2.0.50727.4959
+//     Runtime Version:2.0.50727.5448
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
 //     the code is regenerated.
@@ -241,6 +241,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap box__pencil {
+            get {
+                object obj = ResourceManager.GetObject("box__pencil", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         internal static System.Drawing.Bitmap box__plus {
             get {
                 object obj = ResourceManager.GetObject("box__plus", resourceCulture);
@@ -681,6 +688,15 @@
         }
         
         /// <summary>
+        ///   Looks up a localized string similar to Package Editor.
+        /// </summary>
+        internal static string EditPackage {
+            get {
+                return ResourceManager.GetString("EditPackage", resourceCulture);
+            }
+        }
+        
+        /// <summary>
         ///   Looks up a localized string similar to Singleton view content cannot be closed by users. The AllowUserClose property must return false.
         /// </summary>
         internal static string Error_Closeable_Singleton_Content {

Modified: trunk/Tools/Maestro/Maestro.Base/Properties/Resources.resx
===================================================================
--- trunk/Tools/Maestro/Maestro.Base/Properties/Resources.resx	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Base/Properties/Resources.resx	2011-11-08 13:43:56 UTC (rev 6204)
@@ -1070,4 +1070,10 @@
   <data name="PromptOverwriteOnTargetConnection" xml:space="preserve">
     <value>There are {0} already existing resources that have the same name. Do you want to overwrite these resources?</value>
   </data>
+  <data name="EditPackage" xml:space="preserve">
+    <value>Package Editor</value>
+  </data>
+  <data name="box__pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\box--pencil.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
 </root>
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Base/Resources/box--pencil.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Base/Resources/box--pencil.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Modified: trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.Designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.Designer.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.Designer.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -84,19 +84,9 @@
             // 
             // resImageList
             // 
-            this.resImageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("resImageList.ImageStream")));
+            this.resImageList.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
+            resources.ApplyResources(this.resImageList, "resImageList");
             this.resImageList.TransparentColor = System.Drawing.Color.Transparent;
-            this.resImageList.Images.SetKeyName(0, "document.png");
-            this.resImageList.Images.SetKeyName(1, "database-share.png");
-            this.resImageList.Images.SetKeyName(2, "layer.png");
-            this.resImageList.Images.SetKeyName(3, "map.png");
-            this.resImageList.Images.SetKeyName(4, "application-browser.png");
-            this.resImageList.Images.SetKeyName(5, "images-stack.png");
-            this.resImageList.Images.SetKeyName(6, "printer.png");
-            this.resImageList.Images.SetKeyName(7, "blueprints.png");
-            this.resImageList.Images.SetKeyName(8, "applications-stack.png");
-            this.resImageList.Images.SetKeyName(9, "marker.png");
-            this.resImageList.Images.SetKeyName(10, "edit.png");
             // 
             // btnOK
             // 
@@ -170,10 +160,9 @@
             // 
             // folderImageList
             // 
-            this.folderImageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("folderImageList.ImageStream")));
+            this.folderImageList.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit;
+            resources.ApplyResources(this.folderImageList, "folderImageList");
             this.folderImageList.TransparentColor = System.Drawing.Color.Transparent;
-            this.folderImageList.Images.SetKeyName(0, "server.png");
-            this.folderImageList.Images.SetKeyName(1, "folder-horizontal.png");
             // 
             // label2
             // 

Modified: trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -38,18 +38,6 @@
     /// </summary>
     public partial class ResourcePicker : Form
     {
-        const int RES_UNKNOWN = 0;
-        const int RES_FEATURESOURCE = 1;
-        const int RES_LAYERDEFINITION = 2;
-        const int RES_MAPDEFINITION = 3;
-        const int RES_WEBLAYOUT = 4;
-        const int RES_SYMBOLLIBRARY = 5;
-        const int RES_PRINTLAYOUT = 6;
-        const int RES_DRAWINGSOURCE = 7;
-        const int RES_APPLICATIONDEFINITION = 8;
-        const int RES_SYMBOLDEFINITION = 9;
-        const int RES_WATERMARK = 10;
-
         private ResourceTypes[] _resTypes;
 
         private ResourcePicker()
@@ -71,6 +59,8 @@
                 ResourceTypes.WatermarkDefinition
             };
             cmbResourceFilter.DataSource = _resTypes;
+            RepositoryIcons.PopulateImageList(resImageList);
+            RepositoryIcons.PopulateImageList(folderImageList);
         }
 
         private IResourceService _resSvc;
@@ -347,46 +337,11 @@
                 try
                 {
                     var rt = ResourceIdentifier.GetResourceType(doc.ResourceId);
-                    switch (rt)
-                    {
-                        case ResourceTypes.ApplicationDefinition:
-                            li.ImageIndex = RES_APPLICATIONDEFINITION;
-                            break;
-                        case ResourceTypes.DrawingSource:
-                            li.ImageIndex = RES_DRAWINGSOURCE;
-                            break;
-                        case ResourceTypes.FeatureSource:
-                            li.ImageIndex = RES_FEATURESOURCE;
-                            break;
-                        case ResourceTypes.LayerDefinition:
-                            li.ImageIndex = RES_LAYERDEFINITION;
-                            break;
-                        case ResourceTypes.MapDefinition:
-                            li.ImageIndex = RES_MAPDEFINITION;
-                            break;
-                        case ResourceTypes.PrintLayout:
-                            li.ImageIndex = RES_PRINTLAYOUT;
-                            break;
-                        case ResourceTypes.SymbolLibrary:
-                            li.ImageIndex = RES_SYMBOLLIBRARY;
-                            break;
-                        case ResourceTypes.WebLayout:
-                            li.ImageIndex = RES_WEBLAYOUT;
-                            break;
-                        case ResourceTypes.SymbolDefinition:
-                            li.ImageIndex = RES_SYMBOLDEFINITION;
-                            break;
-                        case ResourceTypes.WatermarkDefinition:
-                            li.ImageIndex = RES_WATERMARK;
-                            break;
-                        default:
-                            li.ImageIndex = RES_UNKNOWN;
-                            break;
-                    }
+                    li.ImageIndex = RepositoryIcons.GetImageIndexForResourceType(rt);
                 }
                 catch
                 {
-                    li.ImageIndex = RES_UNKNOWN;
+                    li.ImageIndex = RepositoryIcons.RES_UNKNOWN;
                 }
 
                 lstResources.Items.Add(li);
@@ -581,16 +536,13 @@
             }
         }
 
-        const int IDX_SERVER = 0;
-        const int IDX_FOLDER = 1;
-
         private static TreeNode CreateNode(RepositoryFolder folder)
         {
             var node = new TreeNode();
             node.Name = folder.Name;
             node.Text = folder.Name;
             node.Tag = folder;
-            node.ImageIndex = node.SelectedImageIndex = folder.IsRoot ? IDX_SERVER : IDX_FOLDER;
+            node.ImageIndex = node.SelectedImageIndex = folder.IsRoot ? RepositoryIcons.RES_ROOT : RepositoryIcons.RES_FOLDER;
             node.Nodes.Add(new DummyNode());
             return node;
         }

Modified: trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.resx
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.resx	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Editors/Common/ResourcePicker.resx	2011-11-08 13:43:56 UTC (rev 6204)
@@ -124,99 +124,10 @@
   <metadata name="resImageList.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>17, 17</value>
   </metadata>
-  <data name="resImageList.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
-        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
-        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADk
-        EwAAAk1TRnQBSQFMAgEBCwEAAegBAAHoAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
-        AwABQAMAATADAAEBAQABCAYAAQwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
-        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
-        AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
-        AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
-        AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
-        AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
-        ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
-        AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
-        AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
-        AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
-        AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
-        AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
-        AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
-        AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
-        AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
-        ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
-        Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
-        AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
-        AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
-        AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
-        ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
-        Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
-        AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
-        AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
-        AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
-        AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
-        AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
-        AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEAAfAIBwG8Af8IAAL/
-        AfQBBwFvAQcB8wL/BgAM/xIAAbwI8wG8Af8IAAP/AW8BFwFvA/8GAAL/AW0GEAFtAfQB/xIAAfAB9Abz
-        AfQB8AwAAW8B4wFvCwABEQPqAhIB6gERFAAB8AH/BvQB/wG8A/8JAAFvAeMBbwsAAewBQwEUAhIBFAFD
-        AewUAAHxCP8BkgIHAfAIAAH/AW8B4wFvAf8LAAHzARQCEgEUAfMVAAHwAgcD7wL3AZIB7ALzAbwIAAEa
-        AW8B4wFvARoMAAETAhIBExYAAfEB8AHxAfABvAEHA7wB7wHzAfQB8AcAAf8CbwHjAm8B/wsABBIWAAH0
-        AfIB8QXvAQcB8gH0Af8BvAP/BAABGgFvA+MBbwEaCwAB6gITAeoZAAHxCP8BkgIHAfADAAH/AW8BFgPj
-        ARYBbwH/CgABbQITAW0ZAAHwAgcD7wL3AZIB7ALzAbwDAAEaAhYD4wIWARoKAAFtAhIBbRkAAfEB8AHx
-        AfABvAEHA7wB7wHzAfQB8AMAAZMBFgHjAW4BFAFuAeMBFgGTBQAB7wHrAfECAAHrAuoB6wIAAfEB6wHv
-        FAAB9AHyAfEF7wEHAfIB9AH/AfADAAEWAZQBFgMTARYBlAEWBQAB6wHsAesCAAHrAm0B6wIAAesBbQHr
-        FwAB8Qj/AfEDAAKUARYBbgESAW4BFgKUBQAC7AFtA+wC6wPsARIBbQHsFwAB8AIHA+8C9wGSAbwDAAEa
-        BxYBGgUACewE6wHsFwAB8QHwAfEB8AG8AQcDvAHxAwAB/wGUARYDlAEWAZQB/wUAAe8M7AHvFwAB9AHy
-        BvEB8gH0BAAB/wEaAZQBFgGUARoB/zUADP8HAAG8CAcBvAMAAfQBtQi0AbUB9AQAEP8BvAoHAbwEAAP/
-        AQcI/wEHBP8BtAHcARkE2wEJAdwBtAH/BAABvALvDK4BtQG8Af8I9AH/AQcC/wIAAQcD7wHyAbMBCQG7
-        AmwBiwHyA+8BBwEAAbQCGQEJARkCCQEZAQkBtAX/AQcB8wHyAYsJswHVAa0BkQG8AfQEKgEwATcBMAEq
-        AfQB7AEHAbwCAAMHCuoDBwEAAbQB2wIJAdsBCQHbAQkB2wGtA7QBtQH0AbwB8wHyAYsB2wazAbQC2wGz
-        AbQBvAH0BTEBWAE3ATEB9AH3Af8BBwL/AbwBBwHvAW0C7QbsAesCBwG8AQABtAHbAQkB2wHcAdsCCQHb
-        AbMB2wEJAdwBtAEAAbwB8wHyArQDswK0AboBtAGzAdwB2wG0AbwB/wERARUBSwFRAXkBoAHlAVgB/wG0
-        AfQB7AEHAbwB8AEHAfcBEAgSARABkgHvAfABAAG0AdsBGQLbAdwB2wEJAdsBswEJARkBCQG0AQABvAH0
-        AfMBCQGzAbQBugEJAbsBugEJARkBugEJAeEBtAHwAf8BRAFLAlgBWQHlAVkBWAH/AbQB9AH3Af8BvAHx
-        AfABBwFDARIHFAFDAeQBBwHxAQABtAHbAgkD2wEJAdsBswHbAQkB2wG0AQAB8AH0AvMBtAG6AbsCGQIJ
-        BBkBtAHwAf8BUgdYAf8B7wH/AUoB9AG8AfMCvAEUAW0CFAQVAhQB7wEHAfMBAAG6AdsBGQHbAdwC2wEJ
-        AdsBswIJAdsBtAEAAfAD9AHyAbQBuwEJARkCCQEZAuIB3AG7AfAB/wgxAf8BBwH/AVEB9AG8AfQBvAHx
-        AeoB6wFtAeoBEgEUARUBQwETAeoCBwH0AQABugHbAgkB2wHcAdsBCQHbAbMB2wEJAdsBtAEAAfAE/wHz
-        AroDCQIZAdsBugLwCv8BuwH/AVEB/wG8Af8B8AHzAW0I7AFtAfIB8AH/AQABugHbAQkB2wEJAdsDswGt
-        AdsBCQHbAbQBAAHwBv8BGQLbAdQC2wEZAf8B8AHzAfEB7wG8ArMBtAGzA7QBuwH/AVEB/wHwAf8B8gHx
-        AfcI6wH3AfEB8gH/AQABugEJARkDCQG0Af8CtAHbAQkB2wG6AQAB8Q7/AfECAAHwCv8BUQH/AfADAAHw
-        Af8C9ALzAvEB9AHwBAAC2wEJA9sDtAHcAdsBCQHbAboBAAHwAwcG7wP3ApIBvAIAAfMB8QHvAbwIUQH/
-        AfADAAHwAf8B9ALzAfED9wG8BAABCQPbAtQB1QG0AQkB2wOzAbQBAAHxAfAC8QLwArwCBwW8AfEEAAHw
-        Cv8B8AMAAfAB/wLzAvEB7wH/AfAB/wgAAboBCQEZAwkBtAH/AfAB9AEAAfQB8gzxAfIB9AQAAfMK8QHz
-        AwAB8QH/BPQBBwHxAfQJAALbAQkD2wG0AfAB9CUAAfMG8gH0CgABCQbbAfQDAAH/AfQBvAoHAbwB9AH/
-        BfQB8wHwARwDbgEcAfIi/wEAAv8BBwr/AQcC/wIRAe8BBwHwARwBcwF0A5oCdAGZAfMBAAH/AfMMvAHz
-        Af8BvA0HAbwDAAG8Cv8BvAIAAmYB8gEHAXMBdAF5AnQCSwF0AZkCdAEbAQAB8QHwCvIB8AHxAQABBwH/
-        C/QB/wEHAwABvAj/AfQB/wG8AgABZgEVAfEBkgGaBHQCmgFLAXQCmgGZAQAB8AzyAfABAAG8AfQGcwJ4
-        ARwCmQH0AbwDAAG8B/8C9AH/AbwCAAESAWYB8wH3BZoBdAFLAXMBHAJ0ARoBAAHwDPIB8AEAAbwB9AFz
-        ARwBeAFzAngBmQEcAZ8BwwEIAfQBvAMAAbwG/wP0Af8BvAIAAa4B6gH/Ae8DmgGZAXQBcwGSAe8BBwHw
-        AbwCAAHxDPIB8QEAAbwB9AFzARwBeAFzAXgCmQGYAZ8BGwEHAfQBvAMAAbwF/wT0Af8BvAIAAuoC8QN0
-        AZMBvAEHAe8BBwG8AfEB8AIAAfEB8wvyAfEBAAG8AfQDcwN4AZgCmQEIAbsB9AG8AwABvAT/BvQBvAYA
-        AfQB7wKSBOwB7QHvAfQCAAHxAfML8gHxAQABvAH/AXMDeAKZAZ8BmQEbARkBuwH/AbwDAAHwA/8F9AHz
-        AfQB8AYAAfEB8gG8AQcB7wL3Ae8BvAHxAfACAAHxA/MJ8gHxAQABvAH/AXMDeAKZAZ8BmQHxAdwBugH/
-        AbwDAAHwAv8F9ALzAfQB8AYAAfEB8gG8AQcB7wL3Ae8BvAHyAfACAAHyBvMH8gEAAfAB/wFzAXgBmQF4
-        AZkBnwHDAQgBCQHcAboB/wHwAwAB8AH/BfQC8wHxAfQB8AYAAfEB8wHxAfABvAIHAbwB8AHzAfACAAHy
-        AfQK8wH0AfIBAAHwAf8DeAOZAQgCuwK6Af8B8AMAAfAB/wT0AvMC8QH0AfAGAAH0Ae8CkgTsAe0B7wH0
-        AgAB8gH0CvMB9AHyAQAB8AH/AXgDmQHDARsB8QG7AtwBugH/AfADAAHwAf8D9ALzAfED9wG8BgAB8QHy
-        AbwBBwHvAvcBBwG8AfIB8AIAAfIB9ArzAfQB8gEAAfAB/wF4A5kBwwHCAQkBugHcAdsBugH/AfADAAHw
-        Af8C9ALzAvEB7wH/AfAB9AYAAfEB8gG8AQcB7wL3AQcBvAHzAfACAAHzAfIK9AHyAfMBAAHwAf8BeAGY
-        ApkBCAK7A7oBtAH/AfADAAHxAv8F9AEHAfEB9AcAAfEB8wHxAfABvAIHAbwB8AHzAfACAAH/AfMK8gHz
-        Af8BAAHxDf8B8QMAAfMI8gH0CAAB8gnxAfIRAAHzDfIB8wEAAUIBTQE+BwABPgMAASgDAAFAAwABMAMA
-        AQEBAAEBBQABgAEBFgAD/wIAAR8B4AEPAcABAwMAAR8B4AEPAcABAwMAAT8B/AF/AfABDwMAAQcB/AF/
-        AfABDwMAAQcB+AE/AfgBHwMAAQcB+AE/AfwBPwMAAQcB8AEfAfwBPwQAAfABHwH8AT8CAAHgAQAB4AEP
-        AfwBPwIAAeABAAHgAQ8B/AE/AgAB4AEAAeABDwGMATECAAHgAQAB4AEPAYwBMQIAAfwBAAHgAQ8BgAEB
-        AgAB/AEAAeABDwGAAQECAAH8AQAB4AEPAYABAQIAAfwBAAHwAR8C/wIAAv8BAAEPAeABBwEAAQ8DAAEP
-        AwABDwMAAQMCAAGABAABAwIAAYAHAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGA
-        AQECAAHAAQAB4AEHAYABAQIAAcABAAHgAQcBgAEBAgAB8AEAAeABBwH4AQECAAHwAQAB4AEPAfgBAwT/
-        AeABHwH4AQcHAAEBAwABAQMAAQEBwAEDAgABgAEBAQABAQHAAQMCAAGAAQEBAAEBAcABAwIAAYABAQEA
-        AQEBwAEDAQABAQGAAQEBAAEBAcABAwEAAQEBgAEBAQABAQHAAQMB8AEBAYABAQEAAQEBwAEDAfABAQGA
-        AQEBAAEBAcABAwHwAQEBgAEBAQABAQHAAQMB8AEBAYABAQEAAQEBwAEDAfABAQGAAQEBAAEBAcABAwHw
-        AQEBgAEBAQABAQHAAQMB8AEBAYABAQEAAQEBwAEHAfABAQGAAQEBAAEBAcABDwHwAQEC/wEAAQEL
-</value>
-  </data>
   <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="resImageList.ImageSize" type="System.Drawing.Size, System.Drawing">
+    <value>16, 16</value>
+  </data>
   <data name="lstResources.Location" type="System.Drawing.Point, System.Drawing">
     <value>3, 31</value>
   </data>
@@ -473,54 +384,8 @@
   <metadata name="folderImageList.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>137, 17</value>
   </metadata>
-  <data name="folderImageList.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
-        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
-        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACk
-        CQAAAk1TRnQBSQFMAgEBAgEAATABAAEwAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
-        AwABEAMAAQEBAAEgBgABEBYAAwcBCgMSARgDEwEaAxMBGgMTARoDEwEaAxMBGgMTARoDEwEaAxMBGgMT
-        ARoDEwEaAxIBGAMIAQvIAAMOARMDPAFnA1ABpANQAaQDUAGkA1ABpANQAaQDUAGkA1ABpANQAaQDUAGk
-        A1ABpAM8AWgDEAEVBAADBAEGAxABFgMTARoDEwEaAxMBGgMTARoDEwEaAxMBGgMTARoDEwEaAxMBGgMT
-        ARoDEwEaAxMBGgMQARYDBAEGiAADGgElA0sBjgOGAf8DggH/A4IB/wOCAf8DggH/A4IB/wOCAf8DhgH/
-        A0sBjgMaASUIAAJMAU0BkQFWAloBvQFWAloBvQFWAloBvQFWAloBvQFWAloBvQFWAloBvQFWAloBvQFW
-        AloBvQFWAloBvQFWAloBvQFWAloBvQFWAloBvQFWAloBvQFWAloBvQJMAU0BkYwAA0wBkwNnAf8DYwH/
-        A2MB/wNjAf8DYwH/A2MB/wEtAcwBLQH/A2cB/wNMAZMMAAFTAlUBsAGGAc8B8AH/AYIBywHtAf8BggHL
-        Ae0B/wGCAcsB7QH/AYIBywHtAf8BggHLAe0B/wGCAcsB7QH/AYIBywHtAf8BggHLAe0B/wGCAcsB7QH/
-        AYIBywHtAf8BggHLAe0B/wGCAcsB7QH/AYYBzwHwAf8BUwJVAbCMAANSAagDTwH/A08B/wNPAf8DTwH/
-        A08B/wNPAf8DTwH/A08B/wNSAagMAANRAaIBhgHPAe4B/wF3AcgB6AH/AXcByAHoAf8BdwHIAegB/wF3
-        AcgB6AH/AXcByAHoAf8BdwHIAegB/wF3AcgB6AH/AXcByAHoAf8BdwHIAegB/wF3AcgB6AH/AXcByAHo
-        Af8BdwHIAegB/wGGAc8B7gH/A1EBoowAA0UBfgPHAf8DvQH/A70B/wO9Af8DvQH/A70B/wO9Af8DxwH/
-        A0UBfgwAA1ABnQGKAdMB8AH/AYIBzAHrAf8BggHMAesB/wGCAcwB6wH/AYIBzAHrAf8BggHMAesB/wGC
-        AcwB6wH/AYIBzAHrAf8BggHMAesB/wGCAcwB6wH/AYIBzAHrAf8BggHMAesB/wGCAcwB6wH/AYoB0wHw
-        Af8DUAGdjAADQwF4A8oB/wPAAf8DwAH/A8AB/wPAAf8DwAH/A9IB/wPKAf8DQwF4DAADTgGZAY8B1wHy
-        Af8BhwHQAe0B/wGHAdAB7QH/AYcB0AHtAf8BhwHQAe0B/wGHAdAB7QH/AYcB0AHtAf8BhwHQAe0B/wGH
-        AdAB7QH/AYcB0AHtAf8BhwHQAe0B/wGHAdAB7QH/AYcB0AHtAf8BjwHXAfIB/wNOAZmMAANCAXUDzQH/
-        A8MB/wPDAf8DwwH/A8MB/wPDAf8DmQH/A80B/wNCAXUMAAFNAk4BlQGUAdsB9AH/AY0B1QHwAf8BjQHV
-        AfAB/wGNAdUB8AH/AY0B1QHwAf8BjQHVAfAB/wGNAdUB8AH/AY0B1QHwAf8BjQHVAfAB/wGNAdUB8AH/
-        AY0B1QHwAf8BjQHVAfAB/wGNAdUB8AH/AZQB2wH0Af8BTQJOAZWMAANBAXMD1gH/A9EB/wPRAf8D0QH/
-        A9EB/wPRAf8D0QH/A9YB/wNBAXMMAANMAZIBmQHgAfYB/wGSAdoB8wH/AZIB2gHzAf8BkgHaAfMB/wGS
-        AdoB8wH/AZIB2gHzAf8BkgHaAfMB/wGSAdoB8wH/AZIB2gHzAf8BkgHaAfMB/wGSAdoB8wH/AZIB2gHz
-        Af8BkgHaAfMB/wGZAeAB9gH/A0wBkowAA0ABcQO3Af8DuwH/A7sB/wO7Af8DuwH/A7sB/wO7Af8DtwH/
-        A0ABcQwAA0sBjgGfAeUB+QH/AZgB3wH2Af8BmAHfAfYB/wGYAd8B9gH/AZgB3wH2Af8BmAHfAfYB/wGY
-        Ad8B9gH/AZgB3wH2Af8BmAHfAfYB/wGYAd8B9gH/AZgB3wH2Af8BmAHfAfYB/wGYAd8B9gH/AZ8B5QH5
-        Af8DSwGOjAADQAFvA9kB/wPPAf8DzwH/A88B/wPPAf8DzwH/A88B/wPZAf8DQAFvDAADSgGLAaMB6QH7
-        Af8BnQHjAfkB/wGdAeMB+QH/AZ0B4wH5Af8BnQHjAfkB/wGdAeMB+QH/AZ0B4wH5Af8BowHpAfoB/wGj
-        AekB+gH/AaMB6QH6Af8BowHpAfoB/wGjAekB+gH/AaMB6QH6Af8BpgHsAfsB/wNKAYuMAAM/AW0D4QH/
-        A9wB/wPcAf8D3AH/A9wB/wPcAf8D3AH/A+EB/wM/AW0MAAFIAkkBiAGoAe0B/QH/AaIB5wH7Af8BogHn
-        AfsB/wGiAecB+wH/AaIB5wH7Af8BogHnAfsB/wGrAfAB/QH/AYUBygHmAf8BcgG8Ad4B/wFyAbwB3gH/
-        AXIBvAHeAf8BcgG8Ad4B/wFyAbwB3gH/AXIBvAHeAf8BSAJJAYiMAAM+AWsDwQH/A8YB/wPGAf8DxgH/
-        A8YB/wPGAf8DxgH/A8EB/wM+AWsMAANIAYUBrgHzAv8BqwHwAf4B/wGrAfAB/gH/AasB8AH+Af8BqwHw
-        Af4B/wGuAfMC/wGJAc0B6QH/AYkBzQHpAf8BqwHwAf4B/wGrAfAB/gH/AasB8AH+Af8BqwHwAf4B/wGr
-        AfAB/gH/Aa4B8wL/A0gBhYwAAz0BaQPjAf8D2gH/A9oB/wPaAf8D2gH/A9oB/wPaAf8D4wH/Az0BaQwA
-        AzsBYwFHAkgBgwFHAkgBgwFHAkgBgwFHAkgBgwFHAkgBgwFHAkgBgwFHAkgBgwL+Af0B/wL4AfMB/wLw
-        AeYB/wLpAdsB/wH+AckBOwH/AfQBtgEoAf8BRwJIAYMDOwFjjAADPQFoA+oB/wPlAf8D5QH/A+UB/wPl
-        Af8D5QH/A+UB/wPqAf8DPQFoKAADIAEuAUYCRwGBAUYCRwGBAUYCRwGBAUYCRwGBAUYCRwGBAUYCRwGB
-        AyABLpAAAzEBTQM9AWcDPQFnAz0BZwM9AWcDPQFnAz0BZwM9AWcDPQFnAzEBTcwAAUIBTQE+BwABPgMA
-        ASgDAAFAAwABEAMAAQEBAAEBBQABgBcAA/8BAAGAAQEC/wQAAYABAQYAAcABAwYAAeABBwYAAeABBwYA
-        AeABBwYAAeABBwYAAeABBwYAAeABBwYAAeABBwYAAeABBwYAAeABBwYAAeABBwYAAeABBwYAAeABBwH+
-        AQEEAAHgAQcC/wQACw==
-</value>
+  <data name="folderImageList.ImageSize" type="System.Drawing.Size, System.Drawing">
+    <value>16, 16</value>
   </data>
   <data name="trvFolders.Location" type="System.Drawing.Point, System.Drawing">
     <value>12, 31</value>

Modified: trunk/Tools/Maestro/Maestro.Editors/Maestro.Editors.csproj
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Maestro.Editors.csproj	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Editors/Maestro.Editors.csproj	2011-11-08 13:43:56 UTC (rev 6204)
@@ -893,6 +893,24 @@
     </Compile>
     <Compile Include="Migration\NsDoc.cs" />
     <Compile Include="NsDoc.cs" />
+    <Compile Include="Packaging\AddResourceEntryDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Packaging\AddResourceEntryDialog.designer.cs">
+      <DependentUpon>AddResourceEntryDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Packaging\EditResourceDataEntryDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Packaging\EditResourceDataEntryDialog.designer.cs">
+      <DependentUpon>EditResourceDataEntryDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Packaging\PackageEditorDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Packaging\PackageEditorDialog.designer.cs">
+      <DependentUpon>PackageEditorDialog.cs</DependentUpon>
+    </Compile>
     <Compile Include="PrintLayout\LogoDialog.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -937,6 +955,7 @@
       <DependentUpon>Resources.resx</DependentUpon>
     </Compile>
     <Compile Include="RepositoryHandle.cs" />
+    <Compile Include="RepositoryIcons.cs" />
     <Compile Include="ResourceEditorServiceBase.cs" />
     <Compile Include="SymbolDefinition\AdvancedSettingsCtrl.cs">
       <SubType>UserControl</SubType>
@@ -2206,6 +2225,14 @@
     <Content Include="OdbcDriverMap.xml">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>
+    <None Include="Resources\disk.png" />
+    <None Include="Resources\printer.png" />
+    <None Include="Resources\map.png" />
+    <None Include="Resources\images-stack.png" />
+    <None Include="Resources\database-share.png" />
+    <None Include="Resources\blueprints.png" />
+    <None Include="Resources\applications-stack.png" />
+    <None Include="Resources\application-browser.png" />
     <None Include="Resources\color.png" />
     <EmbeddedResource Include="Common\ColorPickerDialog.resx">
       <DependentUpon>ColorPickerDialog.cs</DependentUpon>
@@ -2219,6 +2246,15 @@
     <EmbeddedResource Include="MapDefinition\ExtentCalculationDialog.resx">
       <DependentUpon>ExtentCalculationDialog.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Packaging\AddResourceEntryDialog.resx">
+      <DependentUpon>AddResourceEntryDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Packaging\EditResourceDataEntryDialog.resx">
+      <DependentUpon>EditResourceDataEntryDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Packaging\PackageEditorDialog.resx">
+      <DependentUpon>PackageEditorDialog.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Resources\areas\Acad_iso02w100.png" />
     <EmbeddedResource Include="Resources\areas\Acad_iso03w100.png" />
     <EmbeddedResource Include="Resources\areas\Acad_iso04w100.png" />

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,113 @@
+#region Disclaimer / License
+// Copyright (C) 2009, Kenneth Skovhede
+// http://www.hexad.dk, opensource at hexad.dk
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// 
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+// 
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+// 
+#endregion
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using OSGeo.MapGuide.MaestroAPI;
+using OSGeo.MapGuide.MaestroAPI.Exceptions;
+
+namespace Maestro.Editors.Packaging
+{
+    public partial class AddResourceEntryDialog : Form
+    {
+        public AddResourceEntryDialog()
+        {
+            InitializeComponent();
+        }
+
+        private void UseHeader_CheckedChanged(object sender, EventArgs e)
+        {
+            HeaderPath.Enabled = BrowseHeaderButton.Enabled = UseHeader.Checked;
+        }
+
+        private void BrowseHeaderButton_Click(object sender, EventArgs e)
+        {
+            if (BrowseFileDialog.ShowDialog(this) == DialogResult.OK)
+                HeaderPath.Text = BrowseFileDialog.FileName;
+        }
+
+        private void BrowseContentButton_Click(object sender, EventArgs e)
+        {
+            if (BrowseFileDialog.ShowDialog(this) == DialogResult.OK)
+                ContentPath.Text = BrowseFileDialog.FileName;
+        }
+
+        private void OKBtn_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                if (UseAlternateName.Checked && AlternateName.Text.Trim().Length == 0)
+                {
+                    MessageBox.Show(this, Properties.Resources.AlternateNameMissing, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    AlternateName.Focus();
+                    return;
+                }
+
+                if (UseHeader.Checked && !System.IO.File.Exists(HeaderPath.Text))
+                {
+                    MessageBox.Show(this, Properties.Resources.HeaderFileMissing, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    HeaderPath.Focus();
+                    return;
+                }
+
+                if (!System.IO.File.Exists(ContentPath.Text))
+                {
+                    MessageBox.Show(this, Properties.Resources.ContentFileMissing, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    ContentPath.Focus();
+                    return;
+                }
+            }
+            catch (Exception ex)
+            {
+                string msg = NestedExceptionMessageProcessor.GetFullMessage(ex);
+                MessageBox.Show(this, string.Format(Properties.Resources.FilenameValidationError, msg), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+
+            this.DialogResult = DialogResult.OK;
+            this.Close();
+        }
+
+        public string ContentFilepath { get { return ContentPath.Text; } }
+        public string HeaderFilepath { get { return UseHeader.Checked ? HeaderPath.Text : null; } }
+        public string ResourceName { get { return UseAlternateName.Checked ? AlternateName.Text : System.IO.Path.GetFileName(ContentPath.Text); } }
+
+        private void UseAlternateName_CheckedChanged(object sender, EventArgs e)
+        {
+            AlternateName.Enabled = UseAlternateName.Checked;
+        }
+
+        private void ContentPath_TextChanged(object sender, EventArgs e)
+        {
+            try { AlternateName.Text = System.IO.Path.GetFileName(ContentPath.Text); }
+            catch { }
+        }
+
+        private void AddResourceEntry_Load(object sender, EventArgs e)
+        {
+            this.Show();
+            ContentPath.Focus();
+        }
+    }
+}
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.designer.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.designer.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,151 @@
+namespace Maestro.Editors.Packaging
+{
+    partial class AddResourceEntryDialog
+    {
+        /// <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()
+        {
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AddResourceEntryDialog));
+            this.UseHeader = new System.Windows.Forms.CheckBox();
+            this.BrowseHeaderButton = new System.Windows.Forms.Button();
+            this.HeaderPath = new System.Windows.Forms.TextBox();
+            this.label1 = new System.Windows.Forms.Label();
+            this.ContentPath = new System.Windows.Forms.TextBox();
+            this.BrowseContentButton = new System.Windows.Forms.Button();
+            this.OKBtn = new System.Windows.Forms.Button();
+            this.CancelBtn = new System.Windows.Forms.Button();
+            this.BrowseFileDialog = new System.Windows.Forms.OpenFileDialog();
+            this.AlternateName = new System.Windows.Forms.TextBox();
+            this.UseAlternateName = new System.Windows.Forms.CheckBox();
+            this.SuspendLayout();
+            // 
+            // UseHeader
+            // 
+            resources.ApplyResources(this.UseHeader, "UseHeader");
+            this.UseHeader.Name = "UseHeader";
+            this.UseHeader.UseVisualStyleBackColor = true;
+            this.UseHeader.CheckedChanged += new System.EventHandler(this.UseHeader_CheckedChanged);
+            // 
+            // BrowseHeaderButton
+            // 
+            resources.ApplyResources(this.BrowseHeaderButton, "BrowseHeaderButton");
+            this.BrowseHeaderButton.Name = "BrowseHeaderButton";
+            this.BrowseHeaderButton.UseVisualStyleBackColor = true;
+            this.BrowseHeaderButton.Click += new System.EventHandler(this.BrowseHeaderButton_Click);
+            // 
+            // HeaderPath
+            // 
+            resources.ApplyResources(this.HeaderPath, "HeaderPath");
+            this.HeaderPath.Name = "HeaderPath";
+            // 
+            // label1
+            // 
+            resources.ApplyResources(this.label1, "label1");
+            this.label1.Name = "label1";
+            // 
+            // ContentPath
+            // 
+            resources.ApplyResources(this.ContentPath, "ContentPath");
+            this.ContentPath.Name = "ContentPath";
+            this.ContentPath.TextChanged += new System.EventHandler(this.ContentPath_TextChanged);
+            // 
+            // BrowseContentButton
+            // 
+            resources.ApplyResources(this.BrowseContentButton, "BrowseContentButton");
+            this.BrowseContentButton.Name = "BrowseContentButton";
+            this.BrowseContentButton.UseVisualStyleBackColor = true;
+            this.BrowseContentButton.Click += new System.EventHandler(this.BrowseContentButton_Click);
+            // 
+            // OKBtn
+            // 
+            resources.ApplyResources(this.OKBtn, "OKBtn");
+            this.OKBtn.Name = "OKBtn";
+            this.OKBtn.UseVisualStyleBackColor = true;
+            this.OKBtn.Click += new System.EventHandler(this.OKBtn_Click);
+            // 
+            // CancelBtn
+            // 
+            resources.ApplyResources(this.CancelBtn, "CancelBtn");
+            this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.CancelBtn.Name = "CancelBtn";
+            this.CancelBtn.UseVisualStyleBackColor = true;
+            // 
+            // BrowseFileDialog
+            // 
+            resources.ApplyResources(this.BrowseFileDialog, "BrowseFileDialog");
+            // 
+            // AlternateName
+            // 
+            resources.ApplyResources(this.AlternateName, "AlternateName");
+            this.AlternateName.Name = "AlternateName";
+            // 
+            // UseAlternateName
+            // 
+            resources.ApplyResources(this.UseAlternateName, "UseAlternateName");
+            this.UseAlternateName.Name = "UseAlternateName";
+            this.UseAlternateName.UseVisualStyleBackColor = true;
+            this.UseAlternateName.CheckedChanged += new System.EventHandler(this.UseAlternateName_CheckedChanged);
+            // 
+            // AddResourceEntryDialog
+            // 
+            resources.ApplyResources(this, "$this");
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.CancelBtn;
+            this.Controls.Add(this.AlternateName);
+            this.Controls.Add(this.UseAlternateName);
+            this.Controls.Add(this.CancelBtn);
+            this.Controls.Add(this.OKBtn);
+            this.Controls.Add(this.BrowseContentButton);
+            this.Controls.Add(this.ContentPath);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.HeaderPath);
+            this.Controls.Add(this.BrowseHeaderButton);
+            this.Controls.Add(this.UseHeader);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "AddResourceEntryDialog";
+            this.Load += new System.EventHandler(this.AddResourceEntry_Load);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.CheckBox UseHeader;
+        private System.Windows.Forms.Button BrowseHeaderButton;
+        private System.Windows.Forms.TextBox HeaderPath;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox ContentPath;
+        private System.Windows.Forms.Button BrowseContentButton;
+        private System.Windows.Forms.Button OKBtn;
+        private System.Windows.Forms.Button CancelBtn;
+        private System.Windows.Forms.OpenFileDialog BrowseFileDialog;
+        private System.Windows.Forms.TextBox AlternateName;
+        private System.Windows.Forms.CheckBox UseAlternateName;
+    }
+}
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.resx
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.resx	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/AddResourceEntryDialog.resx	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,426 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="UseHeader.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="UseHeader.Location" type="System.Drawing.Point, System.Drawing">
+    <value>15, 11</value>
+  </data>
+  <data name="UseHeader.Size" type="System.Drawing.Size, System.Drawing">
+    <value>77, 17</value>
+  </data>
+  <data name="UseHeader.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="UseHeader.Text" xml:space="preserve">
+    <value>Header file</value>
+  </data>
+  <data name="&gt;&gt;UseHeader.Name" xml:space="preserve">
+    <value>UseHeader</value>
+  </data>
+  <data name="&gt;&gt;UseHeader.Type" xml:space="preserve">
+    <value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;UseHeader.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;UseHeader.ZOrder" xml:space="preserve">
+    <value>9</value>
+  </data>
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="BrowseHeaderButton.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Right</value>
+  </data>
+  <data name="BrowseHeaderButton.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="BrowseHeaderButton.Location" type="System.Drawing.Point, System.Drawing">
+    <value>337, 8</value>
+  </data>
+  <data name="BrowseHeaderButton.Size" type="System.Drawing.Size, System.Drawing">
+    <value>24, 20</value>
+  </data>
+  <data name="BrowseHeaderButton.TabIndex" type="System.Int32, mscorlib">
+    <value>1</value>
+  </data>
+  <data name="BrowseHeaderButton.Text" xml:space="preserve">
+    <value>...</value>
+  </data>
+  <data name="&gt;&gt;BrowseHeaderButton.Name" xml:space="preserve">
+    <value>BrowseHeaderButton</value>
+  </data>
+  <data name="&gt;&gt;BrowseHeaderButton.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;BrowseHeaderButton.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;BrowseHeaderButton.ZOrder" xml:space="preserve">
+    <value>8</value>
+  </data>
+  <data name="HeaderPath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="HeaderPath.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="HeaderPath.Location" type="System.Drawing.Point, System.Drawing">
+    <value>112, 8</value>
+  </data>
+  <data name="HeaderPath.Size" type="System.Drawing.Size, System.Drawing">
+    <value>225, 20</value>
+  </data>
+  <data name="HeaderPath.TabIndex" type="System.Int32, mscorlib">
+    <value>2</value>
+  </data>
+  <data name="&gt;&gt;HeaderPath.Name" xml:space="preserve">
+    <value>HeaderPath</value>
+  </data>
+  <data name="&gt;&gt;HeaderPath.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;HeaderPath.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;HeaderPath.ZOrder" xml:space="preserve">
+    <value>7</value>
+  </data>
+  <data name="label1.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="label1.Location" type="System.Drawing.Point, System.Drawing">
+    <value>32, 44</value>
+  </data>
+  <data name="label1.Size" type="System.Drawing.Size, System.Drawing">
+    <value>60, 13</value>
+  </data>
+  <data name="label1.TabIndex" type="System.Int32, mscorlib">
+    <value>3</value>
+  </data>
+  <data name="label1.Text" xml:space="preserve">
+    <value>Content file</value>
+  </data>
+  <data name="&gt;&gt;label1.Name" xml:space="preserve">
+    <value>label1</value>
+  </data>
+  <data name="&gt;&gt;label1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label1.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;label1.ZOrder" xml:space="preserve">
+    <value>6</value>
+  </data>
+  <data name="ContentPath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="ContentPath.Location" type="System.Drawing.Point, System.Drawing">
+    <value>112, 40</value>
+  </data>
+  <data name="ContentPath.Size" type="System.Drawing.Size, System.Drawing">
+    <value>225, 20</value>
+  </data>
+  <data name="ContentPath.TabIndex" type="System.Int32, mscorlib">
+    <value>4</value>
+  </data>
+  <data name="&gt;&gt;ContentPath.Name" xml:space="preserve">
+    <value>ContentPath</value>
+  </data>
+  <data name="&gt;&gt;ContentPath.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;ContentPath.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;ContentPath.ZOrder" xml:space="preserve">
+    <value>5</value>
+  </data>
+  <data name="BrowseContentButton.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Right</value>
+  </data>
+  <data name="BrowseContentButton.Location" type="System.Drawing.Point, System.Drawing">
+    <value>337, 40</value>
+  </data>
+  <data name="BrowseContentButton.Size" type="System.Drawing.Size, System.Drawing">
+    <value>24, 20</value>
+  </data>
+  <data name="BrowseContentButton.TabIndex" type="System.Int32, mscorlib">
+    <value>5</value>
+  </data>
+  <data name="BrowseContentButton.Text" xml:space="preserve">
+    <value>...</value>
+  </data>
+  <data name="&gt;&gt;BrowseContentButton.Name" xml:space="preserve">
+    <value>BrowseContentButton</value>
+  </data>
+  <data name="&gt;&gt;BrowseContentButton.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;BrowseContentButton.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;BrowseContentButton.ZOrder" xml:space="preserve">
+    <value>4</value>
+  </data>
+  <data name="OKBtn.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Bottom</value>
+  </data>
+  <data name="OKBtn.Location" type="System.Drawing.Point, System.Drawing">
+    <value>108, 104</value>
+  </data>
+  <data name="OKBtn.Size" type="System.Drawing.Size, System.Drawing">
+    <value>75, 23</value>
+  </data>
+  <data name="OKBtn.TabIndex" type="System.Int32, mscorlib">
+    <value>6</value>
+  </data>
+  <data name="OKBtn.Text" xml:space="preserve">
+    <value>OK</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Name" xml:space="preserve">
+    <value>OKBtn</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.ZOrder" xml:space="preserve">
+    <value>3</value>
+  </data>
+  <data name="CancelBtn.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Bottom</value>
+  </data>
+  <data name="CancelBtn.Location" type="System.Drawing.Point, System.Drawing">
+    <value>196, 104</value>
+  </data>
+  <data name="CancelBtn.Size" type="System.Drawing.Size, System.Drawing">
+    <value>75, 23</value>
+  </data>
+  <data name="CancelBtn.TabIndex" type="System.Int32, mscorlib">
+    <value>7</value>
+  </data>
+  <data name="CancelBtn.Text" xml:space="preserve">
+    <value>Cancel</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Name" xml:space="preserve">
+    <value>CancelBtn</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.ZOrder" xml:space="preserve">
+    <value>2</value>
+  </data>
+  <metadata name="BrowseFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <data name="BrowseFileDialog.Filter" xml:space="preserve">
+    <value>All files (*.*)|*.*</value>
+  </data>
+  <data name="BrowseFileDialog.Title" xml:space="preserve">
+    <value>Select the file to use</value>
+  </data>
+  <data name="AlternateName.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="AlternateName.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="AlternateName.Location" type="System.Drawing.Point, System.Drawing">
+    <value>112, 72</value>
+  </data>
+  <data name="AlternateName.Size" type="System.Drawing.Size, System.Drawing">
+    <value>225, 20</value>
+  </data>
+  <data name="AlternateName.TabIndex" type="System.Int32, mscorlib">
+    <value>9</value>
+  </data>
+  <data name="&gt;&gt;AlternateName.Name" xml:space="preserve">
+    <value>AlternateName</value>
+  </data>
+  <data name="&gt;&gt;AlternateName.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;AlternateName.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;AlternateName.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <data name="UseAlternateName.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="UseAlternateName.Location" type="System.Drawing.Point, System.Drawing">
+    <value>9, 74</value>
+  </data>
+  <data name="UseAlternateName.Size" type="System.Drawing.Size, System.Drawing">
+    <value>97, 17</value>
+  </data>
+  <data name="UseAlternateName.TabIndex" type="System.Int32, mscorlib">
+    <value>8</value>
+  </data>
+  <data name="UseAlternateName.Text" xml:space="preserve">
+    <value>Alternate name</value>
+  </data>
+  <data name="&gt;&gt;UseAlternateName.Name" xml:space="preserve">
+    <value>UseAlternateName</value>
+  </data>
+  <data name="&gt;&gt;UseAlternateName.Type" xml:space="preserve">
+    <value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;UseAlternateName.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;UseAlternateName.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
+    <value>6, 13</value>
+  </data>
+  <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
+    <value>371, 135</value>
+  </data>
+  <data name="$this.Text" xml:space="preserve">
+    <value>Add a resource</value>
+  </data>
+  <data name="&gt;&gt;BrowseFileDialog.Name" xml:space="preserve">
+    <value>BrowseFileDialog</value>
+  </data>
+  <data name="&gt;&gt;BrowseFileDialog.Type" xml:space="preserve">
+    <value>System.Windows.Forms.OpenFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;$this.Name" xml:space="preserve">
+    <value>AddResourceEntryDialog</value>
+  </data>
+  <data name="&gt;&gt;$this.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+</root>
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,95 @@
+#region Disclaimer / License
+// Copyright (C) 2009, Kenneth Skovhede
+// http://www.hexad.dk, opensource at hexad.dk
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// 
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+// 
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+// 
+#endregion
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+
+namespace Maestro.Editors.Packaging
+{
+    public partial class EditResourceDataEntryDialog : Form
+    {
+        private string m_resourceName;
+        private string m_contentType;
+        private string m_filename;
+        private string m_datatype;
+
+        public string ResourceName
+        {
+            get { return m_resourceName; }
+            set { m_resourceName = value; }
+        }
+
+        public string ContentType
+        {
+            get { return m_contentType; }
+            set { m_contentType = value; }
+        }
+
+        public string Filename
+        {
+            get { return m_filename; }
+            set { m_filename = value; }
+        }
+
+        public string DataType
+        {
+            get { return m_datatype; }
+            set { m_datatype = value; }
+        }
+
+        public EditResourceDataEntryDialog()
+        {
+            InitializeComponent();
+        }
+
+        private void EditResourceDataEntry_Load(object sender, EventArgs e)
+        {
+            ResourceNameBox.Text = m_resourceName;
+            ContentTypeBox.Text = m_contentType;
+            DataTypeBox.SelectedIndex = DataTypeBox.FindString(m_datatype);
+            FilenameBox.Text = m_filename;
+
+        }
+
+        private void ValidateForm(object sender, EventArgs e)
+        {
+            OKBtn.Enabled =
+                !string.IsNullOrEmpty(ResourceNameBox.Text) &&
+                !string.IsNullOrEmpty(ContentTypeBox.Text) &&
+                !string.IsNullOrEmpty(DataTypeBox.Text);
+        }
+
+        private void OKBtn_Click(object sender, EventArgs e)
+        {
+            m_resourceName = ResourceNameBox.Text;
+            m_contentType = ContentTypeBox.Text;
+            m_datatype = DataTypeBox.Text;
+            this.DialogResult = DialogResult.OK;
+            this.Close();
+        }
+
+
+
+    }
+}
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.designer.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.designer.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,151 @@
+namespace Maestro.Editors.Packaging
+{
+    partial class EditResourceDataEntryDialog
+    {
+        /// <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()
+        {
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EditResourceDataEntryDialog));
+            this.label1 = new System.Windows.Forms.Label();
+            this.ResourceNameBox = new System.Windows.Forms.TextBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.ContentTypeBox = new System.Windows.Forms.ComboBox();
+            this.DataTypeBox = new System.Windows.Forms.ComboBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.FilenameBox = new System.Windows.Forms.TextBox();
+            this.OKBtn = new System.Windows.Forms.Button();
+            this.CancelBtn = new System.Windows.Forms.Button();
+            this.SuspendLayout();
+            // 
+            // label1
+            // 
+            resources.ApplyResources(this.label1, "label1");
+            this.label1.Name = "label1";
+            // 
+            // ResourceNameBox
+            // 
+            resources.ApplyResources(this.ResourceNameBox, "ResourceNameBox");
+            this.ResourceNameBox.Name = "ResourceNameBox";
+            this.ResourceNameBox.TextChanged += new System.EventHandler(this.ValidateForm);
+            // 
+            // label2
+            // 
+            resources.ApplyResources(this.label2, "label2");
+            this.label2.Name = "label2";
+            // 
+            // ContentTypeBox
+            // 
+            resources.ApplyResources(this.ContentTypeBox, "ContentTypeBox");
+            this.ContentTypeBox.FormattingEnabled = true;
+            this.ContentTypeBox.Items.AddRange(new object[] {
+            resources.GetString("ContentTypeBox.Items"),
+            resources.GetString("ContentTypeBox.Items1")});
+            this.ContentTypeBox.Name = "ContentTypeBox";
+            this.ContentTypeBox.TextChanged += new System.EventHandler(this.ValidateForm);
+            // 
+            // DataTypeBox
+            // 
+            resources.ApplyResources(this.DataTypeBox, "DataTypeBox");
+            this.DataTypeBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.DataTypeBox.FormattingEnabled = true;
+            this.DataTypeBox.Items.AddRange(new object[] {
+            resources.GetString("DataTypeBox.Items"),
+            resources.GetString("DataTypeBox.Items1")});
+            this.DataTypeBox.Name = "DataTypeBox";
+            this.DataTypeBox.SelectedIndexChanged += new System.EventHandler(this.ValidateForm);
+            this.DataTypeBox.TextChanged += new System.EventHandler(this.ValidateForm);
+            // 
+            // label3
+            // 
+            resources.ApplyResources(this.label3, "label3");
+            this.label3.Name = "label3";
+            // 
+            // label4
+            // 
+            resources.ApplyResources(this.label4, "label4");
+            this.label4.Name = "label4";
+            // 
+            // FilenameBox
+            // 
+            resources.ApplyResources(this.FilenameBox, "FilenameBox");
+            this.FilenameBox.Name = "FilenameBox";
+            this.FilenameBox.ReadOnly = true;
+            // 
+            // OKBtn
+            // 
+            resources.ApplyResources(this.OKBtn, "OKBtn");
+            this.OKBtn.Name = "OKBtn";
+            this.OKBtn.UseVisualStyleBackColor = true;
+            this.OKBtn.Click += new System.EventHandler(this.OKBtn_Click);
+            // 
+            // CancelBtn
+            // 
+            this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            resources.ApplyResources(this.CancelBtn, "CancelBtn");
+            this.CancelBtn.Name = "CancelBtn";
+            this.CancelBtn.UseVisualStyleBackColor = true;
+            // 
+            // EditResourceDataEntryDialog
+            // 
+            this.AcceptButton = this.OKBtn;
+            resources.ApplyResources(this, "$this");
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.CancelBtn;
+            this.Controls.Add(this.CancelBtn);
+            this.Controls.Add(this.OKBtn);
+            this.Controls.Add(this.FilenameBox);
+            this.Controls.Add(this.label4);
+            this.Controls.Add(this.DataTypeBox);
+            this.Controls.Add(this.label3);
+            this.Controls.Add(this.ContentTypeBox);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.ResourceNameBox);
+            this.Controls.Add(this.label1);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "EditResourceDataEntryDialog";
+            this.Load += new System.EventHandler(this.EditResourceDataEntry_Load);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox ResourceNameBox;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.ComboBox ContentTypeBox;
+        private System.Windows.Forms.ComboBox DataTypeBox;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.TextBox FilenameBox;
+        private System.Windows.Forms.Button OKBtn;
+        private System.Windows.Forms.Button CancelBtn;
+    }
+}
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.resx
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.resx	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/EditResourceDataEntryDialog.resx	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,411 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="label1.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="label1.Location" type="System.Drawing.Point, System.Drawing">
+    <value>8, 11</value>
+  </data>
+  <data name="label1.Size" type="System.Drawing.Size, System.Drawing">
+    <value>35, 13</value>
+  </data>
+  <data name="label1.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="label1.Text" xml:space="preserve">
+    <value>Name</value>
+  </data>
+  <data name="&gt;&gt;label1.Name" xml:space="preserve">
+    <value>label1</value>
+  </data>
+  <data name="&gt;&gt;label1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label1.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;label1.ZOrder" xml:space="preserve">
+    <value>9</value>
+  </data>
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="ResourceNameBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="ResourceNameBox.Location" type="System.Drawing.Point, System.Drawing">
+    <value>80, 8</value>
+  </data>
+  <data name="ResourceNameBox.Size" type="System.Drawing.Size, System.Drawing">
+    <value>200, 20</value>
+  </data>
+  <data name="ResourceNameBox.TabIndex" type="System.Int32, mscorlib">
+    <value>1</value>
+  </data>
+  <data name="&gt;&gt;ResourceNameBox.Name" xml:space="preserve">
+    <value>ResourceNameBox</value>
+  </data>
+  <data name="&gt;&gt;ResourceNameBox.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;ResourceNameBox.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;ResourceNameBox.ZOrder" xml:space="preserve">
+    <value>8</value>
+  </data>
+  <data name="label2.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="label2.Location" type="System.Drawing.Point, System.Drawing">
+    <value>8, 35</value>
+  </data>
+  <data name="label2.Size" type="System.Drawing.Size, System.Drawing">
+    <value>71, 13</value>
+  </data>
+  <data name="label2.TabIndex" type="System.Int32, mscorlib">
+    <value>2</value>
+  </data>
+  <data name="label2.Text" xml:space="preserve">
+    <value>Content Type</value>
+  </data>
+  <data name="&gt;&gt;label2.Name" xml:space="preserve">
+    <value>label2</value>
+  </data>
+  <data name="&gt;&gt;label2.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label2.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;label2.ZOrder" xml:space="preserve">
+    <value>7</value>
+  </data>
+  <data name="ContentTypeBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="ContentTypeBox.Items" xml:space="preserve">
+    <value>text/xml</value>
+  </data>
+  <data name="ContentTypeBox.Items1" xml:space="preserve">
+    <value>application/octet-stream</value>
+  </data>
+  <data name="ContentTypeBox.Location" type="System.Drawing.Point, System.Drawing">
+    <value>80, 32</value>
+  </data>
+  <data name="ContentTypeBox.Size" type="System.Drawing.Size, System.Drawing">
+    <value>200, 21</value>
+  </data>
+  <data name="ContentTypeBox.TabIndex" type="System.Int32, mscorlib">
+    <value>3</value>
+  </data>
+  <data name="&gt;&gt;ContentTypeBox.Name" xml:space="preserve">
+    <value>ContentTypeBox</value>
+  </data>
+  <data name="&gt;&gt;ContentTypeBox.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;ContentTypeBox.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;ContentTypeBox.ZOrder" xml:space="preserve">
+    <value>6</value>
+  </data>
+  <data name="DataTypeBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="DataTypeBox.Items" xml:space="preserve">
+    <value>File</value>
+  </data>
+  <data name="DataTypeBox.Items1" xml:space="preserve">
+    <value>Stream</value>
+  </data>
+  <data name="DataTypeBox.Location" type="System.Drawing.Point, System.Drawing">
+    <value>80, 56</value>
+  </data>
+  <data name="DataTypeBox.Size" type="System.Drawing.Size, System.Drawing">
+    <value>200, 21</value>
+  </data>
+  <data name="DataTypeBox.TabIndex" type="System.Int32, mscorlib">
+    <value>5</value>
+  </data>
+  <data name="&gt;&gt;DataTypeBox.Name" xml:space="preserve">
+    <value>DataTypeBox</value>
+  </data>
+  <data name="&gt;&gt;DataTypeBox.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;DataTypeBox.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;DataTypeBox.ZOrder" xml:space="preserve">
+    <value>4</value>
+  </data>
+  <data name="label3.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="label3.Location" type="System.Drawing.Point, System.Drawing">
+    <value>8, 59</value>
+  </data>
+  <data name="label3.Size" type="System.Drawing.Size, System.Drawing">
+    <value>57, 13</value>
+  </data>
+  <data name="label3.TabIndex" type="System.Int32, mscorlib">
+    <value>4</value>
+  </data>
+  <data name="label3.Text" xml:space="preserve">
+    <value>Data Type</value>
+  </data>
+  <data name="&gt;&gt;label3.Name" xml:space="preserve">
+    <value>label3</value>
+  </data>
+  <data name="&gt;&gt;label3.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label3.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;label3.ZOrder" xml:space="preserve">
+    <value>5</value>
+  </data>
+  <data name="label4.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="label4.Location" type="System.Drawing.Point, System.Drawing">
+    <value>8, 83</value>
+  </data>
+  <data name="label4.Size" type="System.Drawing.Size, System.Drawing">
+    <value>54, 13</value>
+  </data>
+  <data name="label4.TabIndex" type="System.Int32, mscorlib">
+    <value>6</value>
+  </data>
+  <data name="label4.Text" xml:space="preserve">
+    <value>File Name</value>
+  </data>
+  <data name="&gt;&gt;label4.Name" xml:space="preserve">
+    <value>label4</value>
+  </data>
+  <data name="&gt;&gt;label4.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label4.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;label4.ZOrder" xml:space="preserve">
+    <value>3</value>
+  </data>
+  <data name="FilenameBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="FilenameBox.Location" type="System.Drawing.Point, System.Drawing">
+    <value>80, 80</value>
+  </data>
+  <data name="FilenameBox.Size" type="System.Drawing.Size, System.Drawing">
+    <value>200, 20</value>
+  </data>
+  <data name="FilenameBox.TabIndex" type="System.Int32, mscorlib">
+    <value>7</value>
+  </data>
+  <data name="&gt;&gt;FilenameBox.Name" xml:space="preserve">
+    <value>FilenameBox</value>
+  </data>
+  <data name="&gt;&gt;FilenameBox.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;FilenameBox.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;FilenameBox.ZOrder" xml:space="preserve">
+    <value>2</value>
+  </data>
+  <data name="OKBtn.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="OKBtn.Location" type="System.Drawing.Point, System.Drawing">
+    <value>64, 112</value>
+  </data>
+  <data name="OKBtn.Size" type="System.Drawing.Size, System.Drawing">
+    <value>72, 24</value>
+  </data>
+  <data name="OKBtn.TabIndex" type="System.Int32, mscorlib">
+    <value>8</value>
+  </data>
+  <data name="OKBtn.Text" xml:space="preserve">
+    <value>OK</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Name" xml:space="preserve">
+    <value>OKBtn</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <data name="CancelBtn.Location" type="System.Drawing.Point, System.Drawing">
+    <value>152, 112</value>
+  </data>
+  <data name="CancelBtn.Size" type="System.Drawing.Size, System.Drawing">
+    <value>72, 24</value>
+  </data>
+  <data name="CancelBtn.TabIndex" type="System.Int32, mscorlib">
+    <value>9</value>
+  </data>
+  <data name="CancelBtn.Text" xml:space="preserve">
+    <value>Cancel</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Name" xml:space="preserve">
+    <value>CancelBtn</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
+    <value>6, 13</value>
+  </data>
+  <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
+    <value>289, 144</value>
+  </data>
+  <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
+    <value>CenterParent</value>
+  </data>
+  <data name="$this.Text" xml:space="preserve">
+    <value>Edit resourcedata details</value>
+  </data>
+  <data name="&gt;&gt;$this.Name" xml:space="preserve">
+    <value>EditResourceDataEntryDialog</value>
+  </data>
+  <data name="&gt;&gt;$this.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+</root>
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,474 @@
+#region Disclaimer / License
+// Copyright (C) 2009, Kenneth Skovhede
+// http://www.hexad.dk, opensource at hexad.dk
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// 
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+// 
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+// 
+#endregion
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using OSGeo.MapGuide.MaestroAPI;
+using OSGeo.MapGuide.MaestroAPI.Exceptions;
+using OSGeo.MapGuide.MaestroAPI.Resource;
+using System.IO;
+using Maestro.Packaging;
+
+namespace Maestro.Editors.Packaging
+{
+    public partial class PackageEditorDialog : Form
+    {
+        private string m_filename;
+        private Dictionary<string, ResourceItem> m_resources;
+        private IServerConnection _conn;
+
+        public PackageEditorDialog(string filename, IServerConnection conn)
+            : this()
+        {
+            _conn = conn;
+            m_filename = filename;
+            m_resources = new Dictionary<string, ResourceItem>();
+            ResourceTree.ImageList = RepositoryIcons.CreateImageList(); //owner.ResourceEditorMap.SmallImageList;
+            ResourceDataFileList.SmallImageList = RepositoryIcons.CreateImageList(); //ResourceEditors.ShellIcons.ImageList;
+        }
+
+        private PackageEditorDialog()
+        {
+            InitializeComponent();
+        }
+
+        private void PackageEditor_Load(object sender, EventArgs e)
+        {
+            this.Show();
+
+            try
+            {
+                m_resources = PackageProgress.ListPackageContents(this, _conn, m_filename);
+                if (m_resources == null)
+                {
+                    this.DialogResult = DialogResult.Cancel;
+                    this.Close();
+                    return;
+                }
+
+                RebuildTree();
+            }
+            catch (Exception ex)
+            {
+                if (ex is System.Reflection.TargetInvocationException && ex.InnerException != null)
+                    ex = ex.InnerException;
+
+                string msg = NestedExceptionMessageProcessor.GetFullMessage(ex);
+                MessageBox.Show(this, string.Format(Properties.Resources.PackageReadError, msg), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
+                this.DialogResult = DialogResult.Cancel;
+                this.Close();
+                return;
+            }
+
+            OKBtn.Enabled = true;
+        }
+
+        private void RebuildTree()
+        {
+            ResourceTree.Nodes.Clear();
+            TreeNode root = ResourceTree.Nodes.Add("Library://");
+            root.ImageIndex = root.SelectedImageIndex = RepositoryIcons.RES_ROOT;
+
+            foreach (ResourceItem ri in m_resources.Values)
+            {
+                string partial = ri.ResourcePath.Substring(root.Text.Length);
+                string[] parts = partial.Split('/');
+                TreeNode cur = root;
+                root.Expand();
+
+                for (int i = 0; i < parts.Length - 1; i++)
+                {
+                    TreeNode next = null;
+                    foreach (TreeNode n in cur.Nodes)
+                        if (n.Text == parts[i])
+                        {
+                            next = n;
+                            break;
+                        }
+                    if (next == null)
+                    {
+                        cur = cur.Nodes.Add(parts[i]);
+                        cur.ImageIndex = cur.SelectedImageIndex = RepositoryIcons.RES_FOLDER;
+                    }
+                    else
+                        cur = next;
+
+                    cur.Expand();
+                }
+
+                if (parts[parts.Length - 1].Trim().Length > 0)
+                {
+                    TreeNode n = cur.Nodes.Add(parts[parts.Length - 1]);
+                    n.Tag = ri;
+                    n.ImageIndex = n.SelectedImageIndex = RepositoryIcons.GetImageIndexForResourceType(ResourceIdentifier.GetResourceType(ri.ResourcePath));
+                }
+                else
+                    cur.Tag = ri;
+            }
+        }
+
+        private void MainGroup_Panel2_Paint(object sender, PaintEventArgs e)
+        {
+
+        }
+
+        private void ResourcDataFileList_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            DeleteResourceButton.Enabled = EditResourceData.Enabled = SaveResourceData.Enabled = ResourceDataFileList.SelectedItems.Count == 1;
+        }
+
+        private void AddResourceData_Click(object sender, EventArgs e)
+        {
+            if (BrowseResourceDataFile.ShowDialog(this) == DialogResult.OK)
+            {
+                ResourceDataItem rdi = new ResourceDataItem(
+                    System.IO.Path.GetFileName(BrowseResourceDataFile.FileName),
+                    "application/octet-stream",
+                    BrowseResourceDataFile.FileName,
+                    "File");
+                rdi.EntryType = EntryTypeEnum.Added;
+
+                ((ResourceItem)ResourceTree.SelectedNode.Tag).Items.Add(rdi);
+                RefreshFileList();
+            }
+        }
+
+        private void RefreshFileList()
+        {
+            ResourceDataFileList.Items.Clear();
+            foreach (ResourceDataItem rdi in ((ResourceItem)ResourceTree.SelectedNode.Tag).Items)
+                if (rdi.EntryType != EntryTypeEnum.Deleted)
+                {
+                    var lvi = new ListViewItem(new string[] {
+                        rdi.ResourceName, rdi.ContentType, rdi.DataType.ToString(), rdi.Filename
+                    });
+                    ResourceDataFileList.Items.Add(lvi).Tag = rdi;
+                }
+        }
+
+        private void ResourceTree_AfterSelect(object sender, TreeViewEventArgs e)
+        {
+            DeleteResourceButton.Enabled = MainGroup.Panel2.Enabled = (ResourceTree.SelectedNode != null && ResourceTree.SelectedNode.Tag as ResourceItem != null);
+
+            if (MainGroup.Panel2.Enabled)
+            {
+                HeaderFilepath.Text = ((ResourceItem)ResourceTree.SelectedNode.Tag).Headerpath;
+                ContentFilePath.Text = ((ResourceItem)ResourceTree.SelectedNode.Tag).Contentpath;
+                RefreshFileList();
+            }
+        }
+
+        private void DeleteResourceData_Click(object sender, EventArgs e)
+        {
+            if (ResourceDataFileList.SelectedItems.Count != 1 || ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem == null)
+                return;
+
+            (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).EntryType = EntryTypeEnum.Deleted;
+            RefreshFileList();
+        }
+
+        private void SaveResourceData_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                if (ResourceDataFileList.SelectedItems.Count != 1 || ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem == null)
+                    return;
+
+                SaveResourceDataFile.FileName = System.IO.Path.GetFileName((ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).Filename);
+
+                if (SaveResourceDataFile.ShowDialog(this) != DialogResult.OK)
+                    return;
+
+                if ((ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).Filename == SaveResourceDataFile.FileName)
+                    return;
+
+                if ((ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).EntryType == EntryTypeEnum.Regular)
+                {
+                    using(ICSharpCode.SharpZipLib.Zip.ZipFile zipfile = new ICSharpCode.SharpZipLib.Zip.ZipFile(m_filename))
+                    {
+                        int index = FindZipEntry(zipfile, (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).Filename);
+                        if (index >= 0)
+                            using (System.IO.FileStream fs = new System.IO.FileStream(SaveResourceDataFile.FileName, System.IO.FileMode.Create, System.IO.FileAccess.Write, System.IO.FileShare.None))
+                                Utility.CopyStream(zipfile.GetInputStream(index), fs);
+                    }
+                }
+                else if ((ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).EntryType == EntryTypeEnum.Added)
+                {
+                    System.IO.File.Copy((ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).Filename, SaveResourceDataFile.FileName, true);
+                }
+            }
+            catch (Exception ex)
+            {
+                string msg = NestedExceptionMessageProcessor.GetFullMessage(ex);
+                MessageBox.Show(this, string.Format(Properties.Resources.FileCopyError, ex.Message), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+
+        }
+
+        private void EditResourceData_Click(object sender, EventArgs e)
+        {
+            if (ResourceDataFileList.SelectedItems.Count != 1 || ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem == null)
+                return;
+
+            var dlg = new EditResourceDataEntryDialog();
+            dlg.ResourceName = (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).ResourceName;
+            dlg.ContentType = (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).ContentType;
+            dlg.DataType = (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).DataType;
+            dlg.Filename = (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).Filename;
+
+            if (dlg.ShowDialog(this) == DialogResult.OK)
+            {
+                (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).ResourceName = dlg.ResourceName;
+                (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).ContentType = dlg.ContentType;
+                (ResourceDataFileList.SelectedItems[0].Tag as ResourceDataItem).DataType = dlg.DataType;
+                RefreshFileList();
+            }
+        }
+
+        private void ResourceDataFileList_DoubleClick(object sender, EventArgs e)
+        {
+            EditResourceData_Click(sender, e);
+        }
+
+        private void ResourceTree_DragDrop(object sender, DragEventArgs e)
+        {
+            TreeNode x = e.Data.GetData(typeof(TreeNode)) as TreeNode;
+            if (x == null || x.Tag == null)
+                return;
+
+            TreeNode n = ResourceTree.GetNodeAt(ResourceTree.PointToClient(new Point(e.X, e.Y)));
+            if (n != null && n.Tag as ResourceItem != null && (n.Tag as ResourceItem).IsFolder)
+            {
+                //Can't drag onto its' own child
+                TreeNode t = n;
+                while (t.Parent != null)
+                    if (t == x)
+                        return;
+                    else
+                        t = t.Parent;
+
+                x.Remove();
+                n.Nodes.Add(x);
+            }
+            else
+                return;
+        }
+
+        private void ResourceTree_DragOver(object sender, DragEventArgs e)
+        {
+            TreeNode x = e.Data.GetData(typeof(TreeNode)) as TreeNode;
+            if (x == null || x.Tag == null)
+            {
+                e.Effect = DragDropEffects.None;
+                return;
+            }
+
+            TreeNode n = ResourceTree.GetNodeAt(ResourceTree.PointToClient(new Point(e.X, e.Y)));
+            if (n != null && n.Tag as ResourceItem != null && (n.Tag as ResourceItem).IsFolder)
+            {
+                //Can't drag onto its' own child
+                TreeNode t = n;
+                while (t.Parent != null)
+                    if (t == x)
+                    {
+                        e.Effect = DragDropEffects.None;
+                        return;
+                    }
+                    else
+                        t = t.Parent;
+
+                e.Effect = DragDropEffects.Move;
+            }
+            else
+                e.Effect = DragDropEffects.None;
+        }
+
+        private void ResourceTree_ItemDrag(object sender, ItemDragEventArgs e)
+        {
+            ResourceTree.DoDragDrop(e.Item, DragDropEffects.Move);
+        }
+
+        private void AddFolderButton_Click(object sender, EventArgs e)
+        {
+            TreeNode n = new TreeNode(Properties.Resources.NewFolder, RepositoryIcons.RES_FOLDER, RepositoryIcons.RES_FOLDER);
+            n.Tag = new ResourceItem("", "", "");
+            (n.Tag as ResourceItem).EntryType = EntryTypeEnum.Added;
+            (n.Tag as ResourceItem).IsFolder = true;
+
+            if (ResourceTree.SelectedNode == null || ResourceTree.SelectedNode.Parent == null)
+                ResourceTree.Nodes[0].Nodes.Add(n);
+            else if (ResourceTree.SelectedNode.Tag as ResourceItem != null)
+            {
+                if ((ResourceTree.SelectedNode.Tag as ResourceItem).IsFolder)
+                    ResourceTree.SelectedNode.Nodes.Add(n);
+                else if (ResourceTree.SelectedNode.Parent == null)
+                    ResourceTree.Nodes[0].Nodes.Add(n);
+                else
+                    ResourceTree.SelectedNode.Parent.Nodes.Add(n);
+            }
+
+            n.EnsureVisible();
+            ResourceTree.SelectedNode = n;
+            ResourceTree.Focus();
+        }
+
+        private void DeleteResourceButton_Click(object sender, EventArgs e)
+        {
+            if (ResourceTree.SelectedNode == null || ResourceTree.SelectedNode.Tag as ResourceItem == null)
+                return;
+
+            if (MessageBox.Show(this, Properties.Resources.DeleteConfirmation, Application.ProductName, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) != DialogResult.Yes)
+                return;
+
+            TreeNode root = ResourceTree.SelectedNode;
+
+            Queue<TreeNode> lst = new Queue<TreeNode>();
+            lst.Enqueue(root);
+
+            while (lst.Count > 0)
+            {
+                TreeNode n = lst.Dequeue();
+                foreach (TreeNode tn in n.Nodes)
+                    lst.Enqueue(tn);
+
+                if (n.Tag as ResourceItem != null)
+                {
+                    if ((n.Tag as ResourceItem).EntryType == EntryTypeEnum.Regular)
+                    {
+                        for (int i = 0; i < (n.Tag as ResourceItem).Items.Count; i++)
+                            if ((n.Tag as ResourceItem).Items[i].EntryType == EntryTypeEnum.Added)
+                            {
+                                (n.Tag as ResourceItem).Items.RemoveAt(i);
+                                i--;
+                            }
+                    }
+                    (n.Tag as ResourceItem).EntryType = EntryTypeEnum.Deleted;
+                }
+            }
+
+            root.Remove();
+        }
+
+        private void AddResourceButton_Click(object sender, EventArgs e)
+        {
+            var dlg = new AddResourceEntryDialog();
+            if (dlg.ShowDialog(this) == DialogResult.OK)
+            {
+                int imageindex = RepositoryIcons.GetImageIndexForResourceType((ResourceTypes)Enum.Parse(typeof(ResourceTypes), Path.GetExtension(dlg.ResourceName).Replace(".", "")));
+                TreeNode n = new TreeNode(dlg.ResourceName, imageindex, imageindex);
+                ResourceItem i = new ResourceItem("", dlg.HeaderFilepath, dlg.ContentFilepath);
+                i.EntryType = EntryTypeEnum.Added;
+                n.Tag = i;
+
+                if (ResourceTree.SelectedNode == null || ResourceTree.SelectedNode.Parent == null)
+                    ResourceTree.Nodes[0].Nodes.Add(n);
+                else if (ResourceTree.SelectedNode.Tag as ResourceItem != null)
+                {
+                    if ((ResourceTree.SelectedNode.Tag as ResourceItem).IsFolder)
+                        ResourceTree.SelectedNode.Nodes.Add(n);
+                    else if (ResourceTree.SelectedNode.Parent == null)
+                        ResourceTree.Nodes[0].Nodes.Add(n);
+                    else
+                        ResourceTree.SelectedNode.Parent.Nodes.Add(n);
+                }
+                
+                n.EnsureVisible();
+                ResourceTree.SelectedNode = n;
+                ResourceTree.Focus();
+            }
+        }
+
+        private void OKBtn_Click(object sender, EventArgs e)
+        {
+            SavePackageDialog.FileName = m_filename;
+            if (SavePackageDialog.ShowDialog(this) != DialogResult.OK)
+                return;
+
+            //Preparation: Update all resources with the correct path, and build a list with them
+            List<ResourceItem> items = new List<ResourceItem>();
+
+            try
+            {
+                ResourceTree.PathSeparator = "/";
+                ResourceTree.Nodes[0].Text = "Library:/";
+
+                Queue<TreeNode> nl = new Queue<TreeNode>();
+                foreach (TreeNode n in ResourceTree.Nodes[0].Nodes)
+                    nl.Enqueue(n);
+
+                while (nl.Count > 0)
+                {
+                    TreeNode n = nl.Dequeue();
+                    foreach (TreeNode tn in n.Nodes)
+                        nl.Enqueue(tn);
+
+                    if (n.Tag as ResourceItem != null && (n.Tag as ResourceItem).EntryType != EntryTypeEnum.Deleted)
+                    {
+                        ResourceItem ri = new ResourceItem(n.Tag as ResourceItem);
+                        ri.ResourcePath = n.FullPath + (ri.IsFolder ? "/" : "");
+                        if (string.IsNullOrEmpty(ri.OriginalResourcePath))
+                            ri.OriginalResourcePath = ri.ResourcePath;
+
+                        items.Add(ri);
+                    }
+                }
+            }
+            finally
+            {
+                ResourceTree.Nodes[0].Text = "Library://";
+            }
+
+            try
+            {
+                if (PackageProgress.RebuildPackage(this, _conn, m_filename, items, SavePackageDialog.FileName, InsertDeleteCommands.Checked) != DialogResult.OK)
+                    return;
+            }
+            catch (Exception ex)
+            {
+                if (ex is System.Reflection.TargetInvocationException && ex.InnerException != null)
+                    ex = ex.InnerException;
+
+                string msg = NestedExceptionMessageProcessor.GetFullMessage(ex);
+                MessageBox.Show(this, string.Format(Properties.Resources.PackageBuildError, msg), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+            finally
+            {
+            }
+
+            this.DialogResult = DialogResult.OK;
+            this.Close();
+        }
+
+        private int FindZipEntry(ICSharpCode.SharpZipLib.Zip.ZipFile file, string path)
+        {
+            string p = path.Replace('\\', '/');
+            foreach (ICSharpCode.SharpZipLib.Zip.ZipEntry ze in file)
+                if (ze.Name.Replace('\\', '/').Equals(p))
+                    return (int)ze.ZipFileIndex;
+
+            return -1;
+        }
+    }
+}
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.designer.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.designer.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,380 @@
+namespace Maestro.Editors.Packaging
+{
+    partial class PackageEditorDialog
+    {
+        /// <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()
+        {
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PackageEditorDialog));
+            this.MainGroup = new System.Windows.Forms.SplitContainer();
+            this.ResourceTree = new System.Windows.Forms.TreeView();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.InsertDeleteCommands = new System.Windows.Forms.CheckBox();
+            this.toolStrip1 = new System.Windows.Forms.ToolStrip();
+            this.DeleteResourceButton = new System.Windows.Forms.ToolStripButton();
+            this.panel3 = new System.Windows.Forms.Panel();
+            this.ResourceDataFileList = 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.columnHeader5 = new System.Windows.Forms.ColumnHeader();
+            this.toolStrip2 = new System.Windows.Forms.ToolStrip();
+            this.AddResourceData = new System.Windows.Forms.ToolStripButton();
+            this.DeleteResourceData = new System.Windows.Forms.ToolStripButton();
+            this.EditResourceData = new System.Windows.Forms.ToolStripButton();
+            this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
+            this.SaveResourceData = new System.Windows.Forms.ToolStripButton();
+            this.label3 = new System.Windows.Forms.Label();
+            this.ContentFilePath = new System.Windows.Forms.TextBox();
+            this.HeaderFilepath = new System.Windows.Forms.TextBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.ButtonPanel = new System.Windows.Forms.Panel();
+            this.CancelBtn = new System.Windows.Forms.Button();
+            this.OKBtn = new System.Windows.Forms.Button();
+            this.panel2 = new System.Windows.Forms.Panel();
+            this.BrowseResourceDataFile = new System.Windows.Forms.OpenFileDialog();
+            this.SaveResourceDataFile = new System.Windows.Forms.SaveFileDialog();
+            this.SavePackageDialog = new System.Windows.Forms.SaveFileDialog();
+            this.AddResourceButton = new System.Windows.Forms.ToolStripButton();
+            this.AddFolderButton = new System.Windows.Forms.ToolStripButton();
+            this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
+            this.MainGroup.Panel1.SuspendLayout();
+            this.MainGroup.Panel2.SuspendLayout();
+            this.MainGroup.SuspendLayout();
+            this.panel1.SuspendLayout();
+            this.toolStrip1.SuspendLayout();
+            this.panel3.SuspendLayout();
+            this.toolStrip2.SuspendLayout();
+            this.ButtonPanel.SuspendLayout();
+            this.panel2.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // MainGroup
+            // 
+            resources.ApplyResources(this.MainGroup, "MainGroup");
+            this.MainGroup.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.MainGroup.Name = "MainGroup";
+            // 
+            // MainGroup.Panel1
+            // 
+            this.MainGroup.Panel1.Controls.Add(this.ResourceTree);
+            this.MainGroup.Panel1.Controls.Add(this.panel1);
+            this.MainGroup.Panel1.Controls.Add(this.toolStrip1);
+            // 
+            // MainGroup.Panel2
+            // 
+            this.MainGroup.Panel2.Controls.Add(this.panel3);
+            this.MainGroup.Panel2.Controls.Add(this.label3);
+            this.MainGroup.Panel2.Controls.Add(this.ContentFilePath);
+            this.MainGroup.Panel2.Controls.Add(this.HeaderFilepath);
+            this.MainGroup.Panel2.Controls.Add(this.label2);
+            this.MainGroup.Panel2.Controls.Add(this.label1);
+            resources.ApplyResources(this.MainGroup.Panel2, "MainGroup.Panel2");
+            this.MainGroup.Panel2.Paint += new System.Windows.Forms.PaintEventHandler(this.MainGroup_Panel2_Paint);
+            // 
+            // ResourceTree
+            // 
+            this.ResourceTree.AllowDrop = true;
+            resources.ApplyResources(this.ResourceTree, "ResourceTree");
+            this.ResourceTree.LabelEdit = true;
+            this.ResourceTree.Name = "ResourceTree";
+            this.ResourceTree.DragDrop += new System.Windows.Forms.DragEventHandler(this.ResourceTree_DragDrop);
+            this.ResourceTree.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.ResourceTree_AfterSelect);
+            this.ResourceTree.ItemDrag += new System.Windows.Forms.ItemDragEventHandler(this.ResourceTree_ItemDrag);
+            this.ResourceTree.DragOver += new System.Windows.Forms.DragEventHandler(this.ResourceTree_DragOver);
+            // 
+            // panel1
+            // 
+            this.panel1.Controls.Add(this.InsertDeleteCommands);
+            resources.ApplyResources(this.panel1, "panel1");
+            this.panel1.Name = "panel1";
+            // 
+            // InsertDeleteCommands
+            // 
+            resources.ApplyResources(this.InsertDeleteCommands, "InsertDeleteCommands");
+            this.InsertDeleteCommands.Name = "InsertDeleteCommands";
+            this.InsertDeleteCommands.UseVisualStyleBackColor = true;
+            // 
+            // toolStrip1
+            // 
+            this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
+            this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.AddFolderButton,
+            this.AddResourceButton,
+            this.toolStripSeparator2,
+            this.DeleteResourceButton});
+            resources.ApplyResources(this.toolStrip1, "toolStrip1");
+            this.toolStrip1.Name = "toolStrip1";
+            this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
+            // 
+            // DeleteResourceButton
+            // 
+            resources.ApplyResources(this.DeleteResourceButton, "DeleteResourceButton");
+            this.DeleteResourceButton.Image = global::Maestro.Editors.Properties.Resources.cross_script;
+            this.DeleteResourceButton.Name = "DeleteResourceButton";
+            this.DeleteResourceButton.Click += new System.EventHandler(this.DeleteResourceButton_Click);
+            // 
+            // panel3
+            // 
+            resources.ApplyResources(this.panel3, "panel3");
+            this.panel3.Controls.Add(this.ResourceDataFileList);
+            this.panel3.Controls.Add(this.toolStrip2);
+            this.panel3.Name = "panel3";
+            // 
+            // ResourceDataFileList
+            // 
+            this.ResourceDataFileList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+            this.columnHeader1,
+            this.columnHeader2,
+            this.columnHeader3,
+            this.columnHeader5});
+            resources.ApplyResources(this.ResourceDataFileList, "ResourceDataFileList");
+            this.ResourceDataFileList.FullRowSelect = true;
+            this.ResourceDataFileList.MultiSelect = false;
+            this.ResourceDataFileList.Name = "ResourceDataFileList";
+            this.ResourceDataFileList.UseCompatibleStateImageBehavior = false;
+            this.ResourceDataFileList.View = System.Windows.Forms.View.Details;
+            this.ResourceDataFileList.SelectedIndexChanged += new System.EventHandler(this.ResourcDataFileList_SelectedIndexChanged);
+            this.ResourceDataFileList.DoubleClick += new System.EventHandler(this.ResourceDataFileList_DoubleClick);
+            // 
+            // columnHeader1
+            // 
+            resources.ApplyResources(this.columnHeader1, "columnHeader1");
+            // 
+            // columnHeader2
+            // 
+            resources.ApplyResources(this.columnHeader2, "columnHeader2");
+            // 
+            // columnHeader3
+            // 
+            resources.ApplyResources(this.columnHeader3, "columnHeader3");
+            // 
+            // columnHeader5
+            // 
+            resources.ApplyResources(this.columnHeader5, "columnHeader5");
+            // 
+            // toolStrip2
+            // 
+            this.toolStrip2.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
+            this.toolStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.AddResourceData,
+            this.DeleteResourceData,
+            this.EditResourceData,
+            this.toolStripSeparator1,
+            this.SaveResourceData});
+            resources.ApplyResources(this.toolStrip2, "toolStrip2");
+            this.toolStrip2.Name = "toolStrip2";
+            this.toolStrip2.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
+            // 
+            // AddResourceData
+            // 
+            this.AddResourceData.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+            this.AddResourceData.Image = global::Maestro.Editors.Properties.Resources.document__plus;
+            resources.ApplyResources(this.AddResourceData, "AddResourceData");
+            this.AddResourceData.Name = "AddResourceData";
+            this.AddResourceData.Click += new System.EventHandler(this.AddResourceData_Click);
+            // 
+            // DeleteResourceData
+            // 
+            this.DeleteResourceData.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+            resources.ApplyResources(this.DeleteResourceData, "DeleteResourceData");
+            this.DeleteResourceData.Image = global::Maestro.Editors.Properties.Resources.document__minus;
+            this.DeleteResourceData.Name = "DeleteResourceData";
+            this.DeleteResourceData.Click += new System.EventHandler(this.DeleteResourceData_Click);
+            // 
+            // EditResourceData
+            // 
+            this.EditResourceData.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+            resources.ApplyResources(this.EditResourceData, "EditResourceData");
+            this.EditResourceData.Image = global::Maestro.Editors.Properties.Resources.document__pencil;
+            this.EditResourceData.Name = "EditResourceData";
+            this.EditResourceData.Click += new System.EventHandler(this.EditResourceData_Click);
+            // 
+            // toolStripSeparator1
+            // 
+            this.toolStripSeparator1.Name = "toolStripSeparator1";
+            resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
+            // 
+            // SaveResourceData
+            // 
+            this.SaveResourceData.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+            resources.ApplyResources(this.SaveResourceData, "SaveResourceData");
+            this.SaveResourceData.Image = global::Maestro.Editors.Properties.Resources.disk;
+            this.SaveResourceData.Name = "SaveResourceData";
+            this.SaveResourceData.Click += new System.EventHandler(this.SaveResourceData_Click);
+            // 
+            // label3
+            // 
+            resources.ApplyResources(this.label3, "label3");
+            this.label3.Name = "label3";
+            // 
+            // ContentFilePath
+            // 
+            resources.ApplyResources(this.ContentFilePath, "ContentFilePath");
+            this.ContentFilePath.Name = "ContentFilePath";
+            this.ContentFilePath.ReadOnly = true;
+            // 
+            // HeaderFilepath
+            // 
+            resources.ApplyResources(this.HeaderFilepath, "HeaderFilepath");
+            this.HeaderFilepath.Name = "HeaderFilepath";
+            this.HeaderFilepath.ReadOnly = true;
+            // 
+            // label2
+            // 
+            resources.ApplyResources(this.label2, "label2");
+            this.label2.Name = "label2";
+            // 
+            // label1
+            // 
+            resources.ApplyResources(this.label1, "label1");
+            this.label1.Name = "label1";
+            // 
+            // ButtonPanel
+            // 
+            this.ButtonPanel.Controls.Add(this.CancelBtn);
+            this.ButtonPanel.Controls.Add(this.OKBtn);
+            resources.ApplyResources(this.ButtonPanel, "ButtonPanel");
+            this.ButtonPanel.Name = "ButtonPanel";
+            // 
+            // CancelBtn
+            // 
+            resources.ApplyResources(this.CancelBtn, "CancelBtn");
+            this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.CancelBtn.Name = "CancelBtn";
+            this.CancelBtn.UseVisualStyleBackColor = true;
+            // 
+            // OKBtn
+            // 
+            resources.ApplyResources(this.OKBtn, "OKBtn");
+            this.OKBtn.Name = "OKBtn";
+            this.OKBtn.UseVisualStyleBackColor = true;
+            this.OKBtn.Click += new System.EventHandler(this.OKBtn_Click);
+            // 
+            // panel2
+            // 
+            this.panel2.Controls.Add(this.MainGroup);
+            resources.ApplyResources(this.panel2, "panel2");
+            this.panel2.Name = "panel2";
+            // 
+            // BrowseResourceDataFile
+            // 
+            resources.ApplyResources(this.BrowseResourceDataFile, "BrowseResourceDataFile");
+            // 
+            // SaveResourceDataFile
+            // 
+            resources.ApplyResources(this.SaveResourceDataFile, "SaveResourceDataFile");
+            // 
+            // SavePackageDialog
+            // 
+            this.SavePackageDialog.DefaultExt = "mgp";
+            resources.ApplyResources(this.SavePackageDialog, "SavePackageDialog");
+            // 
+            // AddResourceButton
+            // 
+            this.AddResourceButton.Image = global::Maestro.Editors.Properties.Resources.document__plus;
+            resources.ApplyResources(this.AddResourceButton, "AddResourceButton");
+            this.AddResourceButton.Name = "AddResourceButton";
+            this.AddResourceButton.Click += new System.EventHandler(this.AddResourceButton_Click);
+            // 
+            // AddFolderButton
+            // 
+            this.AddFolderButton.Image = global::Maestro.Editors.Properties.Resources.folder__plus;
+            resources.ApplyResources(this.AddFolderButton, "AddFolderButton");
+            this.AddFolderButton.Name = "AddFolderButton";
+            this.AddFolderButton.Click += new System.EventHandler(this.AddFolderButton_Click);
+            // 
+            // toolStripSeparator2
+            // 
+            this.toolStripSeparator2.Name = "toolStripSeparator2";
+            resources.ApplyResources(this.toolStripSeparator2, "toolStripSeparator2");
+            // 
+            // PackageEditorDialog
+            // 
+            resources.ApplyResources(this, "$this");
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.CancelBtn;
+            this.Controls.Add(this.panel2);
+            this.Controls.Add(this.ButtonPanel);
+            this.Name = "PackageEditorDialog";
+            this.Load += new System.EventHandler(this.PackageEditor_Load);
+            this.MainGroup.Panel1.ResumeLayout(false);
+            this.MainGroup.Panel1.PerformLayout();
+            this.MainGroup.Panel2.ResumeLayout(false);
+            this.MainGroup.Panel2.PerformLayout();
+            this.MainGroup.ResumeLayout(false);
+            this.panel1.ResumeLayout(false);
+            this.panel1.PerformLayout();
+            this.toolStrip1.ResumeLayout(false);
+            this.toolStrip1.PerformLayout();
+            this.panel3.ResumeLayout(false);
+            this.panel3.PerformLayout();
+            this.toolStrip2.ResumeLayout(false);
+            this.toolStrip2.PerformLayout();
+            this.ButtonPanel.ResumeLayout(false);
+            this.panel2.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Panel ButtonPanel;
+        private System.Windows.Forms.Button CancelBtn;
+        private System.Windows.Forms.Button OKBtn;
+        private System.Windows.Forms.Panel panel2;
+        private System.Windows.Forms.SplitContainer MainGroup;
+        private System.Windows.Forms.TreeView ResourceTree;
+        private System.Windows.Forms.ToolStrip toolStrip1;
+        private System.Windows.Forms.ToolStripButton DeleteResourceButton;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox ContentFilePath;
+        private System.Windows.Forms.TextBox HeaderFilepath;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Panel panel3;
+        private System.Windows.Forms.ToolStrip toolStrip2;
+        private System.Windows.Forms.ToolStripButton AddResourceData;
+        private System.Windows.Forms.ToolStripButton EditResourceData;
+        private System.Windows.Forms.ToolStripButton DeleteResourceData;
+        private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
+        private System.Windows.Forms.ToolStripButton SaveResourceData;
+        private System.Windows.Forms.ListView ResourceDataFileList;
+        private System.Windows.Forms.ColumnHeader columnHeader1;
+        private System.Windows.Forms.ColumnHeader columnHeader2;
+        private System.Windows.Forms.ColumnHeader columnHeader3;
+        private System.Windows.Forms.ColumnHeader columnHeader5;
+        private System.Windows.Forms.OpenFileDialog BrowseResourceDataFile;
+        private System.Windows.Forms.SaveFileDialog SaveResourceDataFile;
+        private System.Windows.Forms.SaveFileDialog SavePackageDialog;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.CheckBox InsertDeleteCommands;
+        private System.Windows.Forms.ToolStripButton AddFolderButton;
+        private System.Windows.Forms.ToolStripButton AddResourceButton;
+        private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
+    }
+}
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.resx
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.resx	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/Packaging/PackageEditorDialog.resx	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,1340 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="MainGroup.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
+    <value>Fill</value>
+  </data>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="MainGroup.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 0</value>
+  </data>
+  <data name="ResourceTree.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
+    <value>Fill</value>
+  </data>
+  <data name="ResourceTree.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 25</value>
+  </data>
+  <data name="ResourceTree.Size" type="System.Drawing.Size, System.Drawing">
+    <value>276, 330</value>
+  </data>
+  <assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="ResourceTree.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="&gt;&gt;ResourceTree.Name" xml:space="preserve">
+    <value>ResourceTree</value>
+  </data>
+  <data name="&gt;&gt;ResourceTree.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TreeView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;ResourceTree.Parent" xml:space="preserve">
+    <value>MainGroup.Panel1</value>
+  </data>
+  <data name="&gt;&gt;ResourceTree.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <data name="InsertDeleteCommands.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="InsertDeleteCommands.Location" type="System.Drawing.Point, System.Drawing">
+    <value>8, 8</value>
+  </data>
+  <data name="InsertDeleteCommands.Size" type="System.Drawing.Size, System.Drawing">
+    <value>160, 17</value>
+  </data>
+  <data name="InsertDeleteCommands.TabIndex" type="System.Int32, mscorlib">
+    <value>2</value>
+  </data>
+  <data name="InsertDeleteCommands.Text" xml:space="preserve">
+    <value>Delete targets before restore</value>
+  </data>
+  <data name="&gt;&gt;InsertDeleteCommands.Name" xml:space="preserve">
+    <value>InsertDeleteCommands</value>
+  </data>
+  <data name="&gt;&gt;InsertDeleteCommands.Type" xml:space="preserve">
+    <value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;InsertDeleteCommands.Parent" xml:space="preserve">
+    <value>panel1</value>
+  </data>
+  <data name="&gt;&gt;InsertDeleteCommands.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <data name="panel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
+    <value>Bottom</value>
+  </data>
+  <data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 355</value>
+  </data>
+  <data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
+    <value>276, 32</value>
+  </data>
+  <data name="panel1.TabIndex" type="System.Int32, mscorlib">
+    <value>2</value>
+  </data>
+  <data name="&gt;&gt;panel1.Name" xml:space="preserve">
+    <value>panel1</value>
+  </data>
+  <data name="&gt;&gt;panel1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;panel1.Parent" xml:space="preserve">
+    <value>MainGroup.Panel1</value>
+  </data>
+  <data name="&gt;&gt;panel1.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>0, 0</value>
+  </metadata>
+  <data name="AddFolderButton.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
+    <value>Magenta</value>
+  </data>
+  <data name="AddFolderButton.Size" type="System.Drawing.Size, System.Drawing">
+    <value>87, 22</value>
+  </data>
+  <data name="AddFolderButton.Text" xml:space="preserve">
+    <value>New Folder</value>
+  </data>
+  <data name="AddFolderButton.ToolTipText" xml:space="preserve">
+    <value>Add a new folder</value>
+  </data>
+  <data name="AddResourceButton.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
+    <value>Magenta</value>
+  </data>
+  <data name="AddResourceButton.Size" type="System.Drawing.Size, System.Drawing">
+    <value>102, 22</value>
+  </data>
+  <data name="AddResourceButton.Text" xml:space="preserve">
+    <value>New Resource</value>
+  </data>
+  <data name="AddResourceButton.ToolTipText" xml:space="preserve">
+    <value>Add a new resource to the package</value>
+  </data>
+  <data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">
+    <value>6, 25</value>
+  </data>
+  <data name="DeleteResourceButton.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="DeleteResourceButton.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
+    <value>Magenta</value>
+  </data>
+  <data name="DeleteResourceButton.Size" type="System.Drawing.Size, System.Drawing">
+    <value>60, 22</value>
+  </data>
+  <data name="DeleteResourceButton.Text" xml:space="preserve">
+    <value>Delete</value>
+  </data>
+  <data name="DeleteResourceButton.ToolTipText" xml:space="preserve">
+    <value>Delete the selected item</value>
+  </data>
+  <data name="toolStrip1.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 0</value>
+  </data>
+  <data name="toolStrip1.Size" type="System.Drawing.Size, System.Drawing">
+    <value>276, 25</value>
+  </data>
+  <data name="toolStrip1.TabIndex" type="System.Int32, mscorlib">
+    <value>1</value>
+  </data>
+  <data name="&gt;&gt;toolStrip1.Name" xml:space="preserve">
+    <value>toolStrip1</value>
+  </data>
+  <data name="&gt;&gt;toolStrip1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;toolStrip1.Parent" xml:space="preserve">
+    <value>MainGroup.Panel1</value>
+  </data>
+  <data name="&gt;&gt;toolStrip1.ZOrder" xml:space="preserve">
+    <value>2</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel1.Name" xml:space="preserve">
+    <value>MainGroup.Panel1</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel1.Parent" xml:space="preserve">
+    <value>MainGroup</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel1.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <data name="panel3.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Bottom, Left, Right</value>
+  </data>
+  <data name="columnHeader1.Text" xml:space="preserve">
+    <value>Filename</value>
+  </data>
+  <data name="columnHeader1.Width" type="System.Int32, mscorlib">
+    <value>100</value>
+  </data>
+  <data name="columnHeader2.Text" xml:space="preserve">
+    <value>Content type</value>
+  </data>
+  <data name="columnHeader2.Width" type="System.Int32, mscorlib">
+    <value>80</value>
+  </data>
+  <data name="columnHeader3.Text" xml:space="preserve">
+    <value>Data type</value>
+  </data>
+  <data name="columnHeader5.Text" xml:space="preserve">
+    <value>File</value>
+  </data>
+  <data name="ResourceDataFileList.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
+    <value>Fill</value>
+  </data>
+  <data name="ResourceDataFileList.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 25</value>
+  </data>
+  <data name="ResourceDataFileList.Size" type="System.Drawing.Size, System.Drawing">
+    <value>314, 266</value>
+  </data>
+  <data name="ResourceDataFileList.TabIndex" type="System.Int32, mscorlib">
+    <value>1</value>
+  </data>
+  <data name="&gt;&gt;ResourceDataFileList.Name" xml:space="preserve">
+    <value>ResourceDataFileList</value>
+  </data>
+  <data name="&gt;&gt;ResourceDataFileList.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;ResourceDataFileList.Parent" xml:space="preserve">
+    <value>panel3</value>
+  </data>
+  <data name="&gt;&gt;ResourceDataFileList.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <metadata name="toolStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <data name="AddResourceData.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
+    <value>Magenta</value>
+  </data>
+  <data name="AddResourceData.Size" type="System.Drawing.Size, System.Drawing">
+    <value>23, 22</value>
+  </data>
+  <data name="AddResourceData.ToolTipText" xml:space="preserve">
+    <value>Add a file</value>
+  </data>
+  <data name="DeleteResourceData.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="DeleteResourceData.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
+    <value>Magenta</value>
+  </data>
+  <data name="DeleteResourceData.Size" type="System.Drawing.Size, System.Drawing">
+    <value>23, 22</value>
+  </data>
+  <data name="DeleteResourceData.ToolTipText" xml:space="preserve">
+    <value>Delete the selected file</value>
+  </data>
+  <data name="EditResourceData.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="EditResourceData.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
+    <value>Magenta</value>
+  </data>
+  <data name="EditResourceData.Size" type="System.Drawing.Size, System.Drawing">
+    <value>23, 22</value>
+  </data>
+  <data name="EditResourceData.ToolTipText" xml:space="preserve">
+    <value>Edit the selected files metadata</value>
+  </data>
+  <data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
+    <value>6, 25</value>
+  </data>
+  <data name="SaveResourceData.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="SaveResourceData.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
+    <value>Magenta</value>
+  </data>
+  <data name="SaveResourceData.Size" type="System.Drawing.Size, System.Drawing">
+    <value>23, 22</value>
+  </data>
+  <data name="SaveResourceData.ToolTipText" xml:space="preserve">
+    <value>Save the selected file</value>
+  </data>
+  <data name="toolStrip2.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 0</value>
+  </data>
+  <data name="toolStrip2.Size" type="System.Drawing.Size, System.Drawing">
+    <value>314, 25</value>
+  </data>
+  <data name="toolStrip2.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="toolStrip2.Text" xml:space="preserve">
+    <value>toolStrip2</value>
+  </data>
+  <data name="&gt;&gt;toolStrip2.Name" xml:space="preserve">
+    <value>toolStrip2</value>
+  </data>
+  <data name="&gt;&gt;toolStrip2.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;toolStrip2.Parent" xml:space="preserve">
+    <value>panel3</value>
+  </data>
+  <data name="&gt;&gt;toolStrip2.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <data name="panel3.Location" type="System.Drawing.Point, System.Drawing">
+    <value>16, 88</value>
+  </data>
+  <data name="panel3.Size" type="System.Drawing.Size, System.Drawing">
+    <value>314, 291</value>
+  </data>
+  <data name="panel3.TabIndex" type="System.Int32, mscorlib">
+    <value>5</value>
+  </data>
+  <data name="&gt;&gt;panel3.Name" xml:space="preserve">
+    <value>panel3</value>
+  </data>
+  <data name="&gt;&gt;panel3.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;panel3.Parent" xml:space="preserve">
+    <value>MainGroup.Panel2</value>
+  </data>
+  <data name="&gt;&gt;panel3.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <data name="label3.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="label3.Location" type="System.Drawing.Point, System.Drawing">
+    <value>16, 64</value>
+  </data>
+  <data name="label3.Size" type="System.Drawing.Size, System.Drawing">
+    <value>51, 13</value>
+  </data>
+  <data name="label3.TabIndex" type="System.Int32, mscorlib">
+    <value>4</value>
+  </data>
+  <data name="label3.Text" xml:space="preserve">
+    <value>Data files</value>
+  </data>
+  <data name="&gt;&gt;label3.Name" xml:space="preserve">
+    <value>label3</value>
+  </data>
+  <data name="&gt;&gt;label3.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label3.Parent" xml:space="preserve">
+    <value>MainGroup.Panel2</value>
+  </data>
+  <data name="&gt;&gt;label3.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <data name="ContentFilePath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="ContentFilePath.Location" type="System.Drawing.Point, System.Drawing">
+    <value>80, 32</value>
+  </data>
+  <data name="ContentFilePath.Size" type="System.Drawing.Size, System.Drawing">
+    <value>250, 20</value>
+  </data>
+  <data name="ContentFilePath.TabIndex" type="System.Int32, mscorlib">
+    <value>3</value>
+  </data>
+  <data name="&gt;&gt;ContentFilePath.Name" xml:space="preserve">
+    <value>ContentFilePath</value>
+  </data>
+  <data name="&gt;&gt;ContentFilePath.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;ContentFilePath.Parent" xml:space="preserve">
+    <value>MainGroup.Panel2</value>
+  </data>
+  <data name="&gt;&gt;ContentFilePath.ZOrder" xml:space="preserve">
+    <value>2</value>
+  </data>
+  <data name="HeaderFilepath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Top, Left, Right</value>
+  </data>
+  <data name="HeaderFilepath.Location" type="System.Drawing.Point, System.Drawing">
+    <value>80, 8</value>
+  </data>
+  <data name="HeaderFilepath.Size" type="System.Drawing.Size, System.Drawing">
+    <value>250, 20</value>
+  </data>
+  <data name="HeaderFilepath.TabIndex" type="System.Int32, mscorlib">
+    <value>2</value>
+  </data>
+  <data name="&gt;&gt;HeaderFilepath.Name" xml:space="preserve">
+    <value>HeaderFilepath</value>
+  </data>
+  <data name="&gt;&gt;HeaderFilepath.Type" xml:space="preserve">
+    <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;HeaderFilepath.Parent" xml:space="preserve">
+    <value>MainGroup.Panel2</value>
+  </data>
+  <data name="&gt;&gt;HeaderFilepath.ZOrder" xml:space="preserve">
+    <value>3</value>
+  </data>
+  <data name="label2.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="label2.Location" type="System.Drawing.Point, System.Drawing">
+    <value>16, 32</value>
+  </data>
+  <data name="label2.Size" type="System.Drawing.Size, System.Drawing">
+    <value>60, 13</value>
+  </data>
+  <data name="label2.TabIndex" type="System.Int32, mscorlib">
+    <value>1</value>
+  </data>
+  <data name="label2.Text" xml:space="preserve">
+    <value>Content file</value>
+  </data>
+  <data name="&gt;&gt;label2.Name" xml:space="preserve">
+    <value>label2</value>
+  </data>
+  <data name="&gt;&gt;label2.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label2.Parent" xml:space="preserve">
+    <value>MainGroup.Panel2</value>
+  </data>
+  <data name="&gt;&gt;label2.ZOrder" xml:space="preserve">
+    <value>4</value>
+  </data>
+  <data name="label1.AutoSize" type="System.Boolean, mscorlib">
+    <value>True</value>
+  </data>
+  <data name="label1.Location" type="System.Drawing.Point, System.Drawing">
+    <value>16, 8</value>
+  </data>
+  <data name="label1.Size" type="System.Drawing.Size, System.Drawing">
+    <value>58, 13</value>
+  </data>
+  <data name="label1.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="label1.Text" xml:space="preserve">
+    <value>Header file</value>
+  </data>
+  <data name="&gt;&gt;label1.Name" xml:space="preserve">
+    <value>label1</value>
+  </data>
+  <data name="&gt;&gt;label1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;label1.Parent" xml:space="preserve">
+    <value>MainGroup.Panel2</value>
+  </data>
+  <data name="&gt;&gt;label1.ZOrder" xml:space="preserve">
+    <value>5</value>
+  </data>
+  <data name="MainGroup.Panel2.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel2.Name" xml:space="preserve">
+    <value>MainGroup.Panel2</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel2.Type" xml:space="preserve">
+    <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel2.Parent" xml:space="preserve">
+    <value>MainGroup</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Panel2.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <data name="MainGroup.Size" type="System.Drawing.Size, System.Drawing">
+    <value>624, 387</value>
+  </data>
+  <data name="MainGroup.SplitterDistance" type="System.Int32, mscorlib">
+    <value>276</value>
+  </data>
+  <data name="MainGroup.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Name" xml:space="preserve">
+    <value>MainGroup</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Type" xml:space="preserve">
+    <value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.Parent" xml:space="preserve">
+    <value>panel2</value>
+  </data>
+  <data name="&gt;&gt;MainGroup.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <data name="CancelBtn.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Bottom</value>
+  </data>
+  <data name="CancelBtn.Location" type="System.Drawing.Point, System.Drawing">
+    <value>319, 16</value>
+  </data>
+  <data name="CancelBtn.Size" type="System.Drawing.Size, System.Drawing">
+    <value>72, 24</value>
+  </data>
+  <data name="CancelBtn.TabIndex" type="System.Int32, mscorlib">
+    <value>1</value>
+  </data>
+  <data name="CancelBtn.Text" xml:space="preserve">
+    <value>Cancel</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Name" xml:space="preserve">
+    <value>CancelBtn</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.Parent" xml:space="preserve">
+    <value>ButtonPanel</value>
+  </data>
+  <data name="&gt;&gt;CancelBtn.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <data name="OKBtn.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
+    <value>Bottom</value>
+  </data>
+  <data name="OKBtn.Enabled" type="System.Boolean, mscorlib">
+    <value>False</value>
+  </data>
+  <data name="OKBtn.Location" type="System.Drawing.Point, System.Drawing">
+    <value>231, 16</value>
+  </data>
+  <data name="OKBtn.Size" type="System.Drawing.Size, System.Drawing">
+    <value>72, 24</value>
+  </data>
+  <data name="OKBtn.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="OKBtn.Text" xml:space="preserve">
+    <value>OK</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Name" xml:space="preserve">
+    <value>OKBtn</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.Parent" xml:space="preserve">
+    <value>ButtonPanel</value>
+  </data>
+  <data name="&gt;&gt;OKBtn.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <data name="ButtonPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
+    <value>Bottom</value>
+  </data>
+  <data name="ButtonPanel.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 387</value>
+  </data>
+  <data name="ButtonPanel.Size" type="System.Drawing.Size, System.Drawing">
+    <value>624, 55</value>
+  </data>
+  <data name="ButtonPanel.TabIndex" type="System.Int32, mscorlib">
+    <value>0</value>
+  </data>
+  <data name="&gt;&gt;ButtonPanel.Name" xml:space="preserve">
+    <value>ButtonPanel</value>
+  </data>
+  <data name="&gt;&gt;ButtonPanel.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;ButtonPanel.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;ButtonPanel.ZOrder" xml:space="preserve">
+    <value>1</value>
+  </data>
+  <data name="panel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
+    <value>Fill</value>
+  </data>
+  <data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
+    <value>0, 0</value>
+  </data>
+  <data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
+    <value>624, 387</value>
+  </data>
+  <data name="panel2.TabIndex" type="System.Int32, mscorlib">
+    <value>1</value>
+  </data>
+  <data name="&gt;&gt;panel2.Name" xml:space="preserve">
+    <value>panel2</value>
+  </data>
+  <data name="&gt;&gt;panel2.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;panel2.Parent" xml:space="preserve">
+    <value>$this</value>
+  </data>
+  <data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
+    <value>0</value>
+  </data>
+  <metadata name="BrowseResourceDataFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>227, 17</value>
+  </metadata>
+  <data name="BrowseResourceDataFile.Filter" xml:space="preserve">
+    <value>All files (*.*)|*.*</value>
+  </data>
+  <data name="BrowseResourceDataFile.Title" xml:space="preserve">
+    <value>Select a file to add</value>
+  </data>
+  <metadata name="SaveResourceDataFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>411, 17</value>
+  </metadata>
+  <data name="SaveResourceDataFile.Filter" xml:space="preserve">
+    <value>All files (*.*)|*.*</value>
+  </data>
+  <data name="SaveResourceDataFile.Title" xml:space="preserve">
+    <value>Select where to save the file</value>
+  </data>
+  <metadata name="SavePackageDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>581, 17</value>
+  </metadata>
+  <data name="SavePackageDialog.Filter" xml:space="preserve">
+    <value>MapGuide Packages (*.mgp)|*.mgp|Zip files (*.zip)|*.zip|All files (*.*)|*.*</value>
+  </data>
+  <data name="SavePackageDialog.Title" xml:space="preserve">
+    <value>Select where to store the file</value>
+  </data>
+  <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
+    <value>6, 13</value>
+  </data>
+  <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
+    <value>624, 442</value>
+  </data>
+  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+        AAD8PwAAKAAAADAAAABgAAAAAQAIAAAAAAAACQAAAAAAAAAAAAAAAQAAAAEAAAAAAAATDwgACxsFABgS
+        BwAADhMAARYdACUOCgA2FQ4AKhUUADwQEAAMIwsAGD8GABkkEQARMhUANigIAD8wDgAnIxQANioXAAAd
+        JwAMJy0AAiw6ADYvIQAuOCwANTMvACAwMQBFHhUAQT42ABpQGgAkWQIAI0sQACx0DAA1dwYAK3kYAD5+
+        HwATUC4AJF8kADhcLAAebDsAJX44AGxTGwBCfA4AUkQjAFpXOQABOUgAAkFPAAFDVgASSlYAGndJABdy
+        WQA2Zl4AKn1VAAFVcAA9WGwAEm5hABBzZQAEYXkAGmF5AAlzfQA/YHcAUk1OAHxRUwBRcEMAemZWAExV
+        YwBlYmEAnCwqAJ8wKwCMLzEAnjAwAKQ3KwCjOjYArEEsALJKLAC3US8ArEY3ALJMNQC4VTcAiG83AKtK
+        RQCrUUkAtVdHAK9UUwCyW1kAkXxAAK1kTQC7ZVQAn312ALhmYwC/cGUAu3l3AMVyVwDEeGkAwnx5ADeI
+        BgA3jRMAOJIXADWNKQA4myYAKogzADWYPgA5ozcAQ4sLAEmOEgBViRgATZIYAFaUGQBnmR8AW5ooAFeL
+        OQBmmyUAcZ8qAGiaNwB0oS0AZ6A1AHmmOgAbg18AIYZMADWeQQAkjVQAKptbADmsRwAuoFgAG4ZmAC6D
+        awAklWUAd5NTAHalSgBWgn8AfZ9hAHaZdwCIqTkA/LkeAMyfOADcoygA26k6AOerJgDssS0A/rwnAOKs
+        MwDvuj0A/78wAP7BNwCZnksAmZpWAK+OQgCzkkkAvJ9eAImsRACXsEgAiKhcALi3RQCtrV8AoLlcALK7
+        WQCtmnsAt5pzAIKlZgCapW0AmbhhAJuwfACjoWoAqLFpAKugdwDJoEEA3KxEAN+xTADEt1kA2rFWAOm5
+        TgDnulcAyoVrAMqIdQDQjnoAw5J2ANCQfQDBtmgA1L1tAOi/ZAC6wmgAvMVzAMvDXgD+xkYA/MpXAP/Q
+        XgDHxGcA2sVpANnNdgDpxWkA+8xjAP3QaQDnyXsA8ct3AOzRcwD91HYAAmiIAAd2iAAAbpMAB3GRABp5
+        kwAle4gARWyCAGR6iAAvgpMAR4aBAG6VigB5o5YAup2FAI6nhACYqYUAjKyaALihhwCttYUAurCFAKq4
+        lwC/v58AyImGAMqUiQDUmYgAzZSSANOckwDLo4YAz6yfANillwDfsqMA47+zAKnGgQC9xJ8AxMeMAN3H
+        jADFyZUA2suTAM3UlgDc15MA59OFAPzYhgDv3JsA+9uTAP3hnADLwqQA1sOkANnYpQDWzrQA7d6sAOfG
+        uADs1roA+N+yANfgtQD946cA/ui5ANrSyQDu08MA89zGAPvpxQD56dMA/vHVAP///wAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAA2tfX2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFxOQkJC
+        QkJERERBRE5ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANdOQkJCSlJc19ra11tSREFEQUbX
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXR0ZQW976/vz39+3t7ff8/vTXT0RERNcAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAE5HT62VaOfsu6mlpIaGpKSoscHt/PNXREFGAAAAAAAAAAAAAAAAAAAAAAAAAADX
+        R0JY02VeXiiOp6SKiIiIiIeFhYWkqer481FBRNcAAAAAAAAAAAAAAAAAAAAAAFhHRdv+nl1jY2Afgry1
+        jY2MjIyJiYiHhYWp6vzXREFXAAAAAAAAAAAAAAAAAAAAVUVL8/jqlx5jeHhkXZS3tY2NjY2MjImDiYeH
+        irz34EZEUQAAAAAAAAAAAAAAAABYR07797+nsF1keHh4ZGWZt7W1jY2NjIyJiYODh4eo9/FXRFcAAAAA
+        AAAAAAAAANdHS/v3u6m2wW5eeHh4eGRdlMG1tY2NjY2MiYmDg4OHu2aVUkFcAAAAAAAAAAAAAEdK8/i7
+        sba2vbpdeHh4eHhkXW7AtrW1jY2MjImJg4ODqGddnU9EAAAAAAAAAAAAUEfe+L+xtry8vexlZHh4eHh4
+        eF5wwbW1jY2NjYyJiYODtmVeXZpGRgAAAAAAAABWBwYXFRERERERERUCCg0jeHh4eHhduLe1oycPDg4O
+        Dg4OEQICAgwICVkAAAAAAAAZAAAAAAAAAAAAAAAAAAAADXh4eHhhasGjAwAAAAAAAAAAAAAAAAAAAEMA
+        AAAAANgZEhISEhISEhISEhISEgUACnV4eHh4XbqQAAQFEhISEhISEhISEhISBUPXAAAAAEvExMTExMTE
+        xMTExMTExMTCMHh4eGRfXbKxMcTExMTExMTExMTExMTExDRGAAAAAEjExMTExMTExMTExMTExMTExXhk
+        ZWWUsuqwxcTFxMTExMTExMTExMTExDpEAAAAq0jExMTExMTExMTExMTExMTFfGQfoeS+u7G7gcXExMTE
+        xMTExMTExMTExMhEWQAAUEj54p/FxMTExMTCMnR3d3l4dQsAAQAAAQGRvLGvnyZ2NsXExMTExMN8YpxO
+        RgAASEz+7b7FxMTExMQ4IWF4eGRkHAAEBAQEBAQQp7e9gl94JcLExMTExMN4ZHFXRAAASFv+7L7FxMTE
+        xMQ3Hl1dXV0fAS3ExMTExMQrKbbqXmR4JcLExMTExMN4ZF3XRAAASK786r7FxMTExMQ3bOPw8PQaK8TE
+        xMTExMTEFE3pXWR4JcTFxMTExMN4eF2tRADZSN746unFxMTExMQ31vj49T4UxMTExMTExMTEwhOSgl94
+        JcLExMTExMN4eF3SRNeuSN/46unFxMTExMTC7vj4mhPCxMTExMTExMTExDcWr2VfJcLExMTExMNfX13S
+        RlyuSN/495XFxMTExMTCleXuGDfExMTExMTExMTExMQzKrlqI8LExMTExMeWgnDdQlzZSN78k17ExMTE
+        xMU3Hm87M8TExMTExMrKxMTExMTEM1OyG8LExMTExMe2wfjeQtcASN7hXV3ExMTExMQ3IB0zxMTExMTE
+        yubjxsXExMTExC6OIzfExMTExMpqamveQgAASdldXV3ExMTExMQ3JSvExMTExMTG5ezq08bExMTExMQi
+        G8LExMTExDldX12tRAAASatlYXXExMTExMQ3K8TExMTExMXV7Orq6s/ExMTExMTCK8LExMTExDlkYWtY
+        RAAATFpvYXjExMTExMTExMTExMTExNHs7Orqwb/MxMTExMTEwsTExMTExMN4X5VPSgAAqlCPXXnFxMTE
+        xMTExMTExMTEe/L37OrqwcG8y8TExMTExMTExMTExMN4XaJKWAAAAEytXWTExMTExMTExMTExMQ2XWVy
+        6+rBwcG9ucfExMTExMTExMTExDlfaK1CAAAAAExUJCLFxMTExMTExMTExDl1ZGFds+rBwby8t6bCxcTE
+        xMTExMTExDkbPU9GAAAAAK04xMTExMTExMTExMTExXl4ZF2T7MHBvby3traPwsTExMTExMTExMTExD9Z
+        AAAAAADExMTExMTExMTExMTEdnh4X3LswcHBwby2trW1fcTExMTExMTExMTExDQAAAAAAADGxMTExMTE
+        xMTExMQlZF1dXenBwemTmcG3tbW1izHExMTExMTExMTExMwAAAAAAAAAPkB/L3p6ejLNgdBoXWVllOrB
+        6WhfXbC3t7W1jYZ9fYB9gICBzck7PAAAAAAAAAAAAElbcl54ZGbqweqZZmVdaerqlF54YWWUu7e1jIyM
+        iYmDibXq+kpHAAAAAAAAAAAAAKtJqm9deF1xuOxyXWFfXXHqaV94eGRfZYK5toyDiYOMter7T0dcAAAA
+        AAAAAAAAAABaTKtvXWRdXWqyXWRhZYLqgl14eHh4ZF9dpo2JjIy16vtVR1UAAAAAAAAAAAAAAAAAWkyq
+        cl1dXV3pal1dmb3Ba2F4eHh4eHhfcLWMjbf3+lBFUAAAAAAAAAAAAAAAAAAAAFpMW9T2aF3pcG24vbe5
+        XXh4eHh4eHhkZbS3wfjfS0dVAAAAAAAAAAAAAAAAAAAAAACqSUzZcl3o7cHBwcFuX3h4eHh4eHh4X4L4
+        +6pHR1sAAAAAAAAAAAAAAAAAAAAAAAAAAExMWtz9+PiYZWhdeHh4eHh4ZGFlZZXeS0dKAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAACsSUlMqvOTXV1dXV9dX2VdZnKdrVVLR1sAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAKpMSUxarZuboaCgoZubq1pMS0urAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFtMSUlM
+        TExMTExJSEtYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADerKurrNkAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAD///w///8AAP//gAH//wAA//wAAD//AAD/8AAAD/8AAP/gAAAH/wAA/4AAAAH/
+        AAD/AAAAAP8AAP4AAAAAfwAA/AAAAAA/AAD4AAAAAB8AAPgAAAAAHwAA8AAAAAAPAADgAAAAAAcAAOAA
+        AAAABwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAgAAAAAABAACAAAAAAAEAAIAAAAAAAQAAgAAAAAAB
+        AACAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAABAACAAAAAAAEAAIAA
+        AAAAAQAAgAAAAAABAACAAAAAAAEAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAOAAAAAABwAA4AAAAAAH
+        AADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/g
+        AAAH/wAA//AAAA//AAD//AAAP/8AAP//gAH//wAA///4H///AAAoAAAAIAAAAEAAAAABAAgAAAAAAAAE
+        AAAAAAAAAAAAAAABAAAAAQAAAAAAAAoIBAAcCwkACRcGABIXBQAAExkAJBsJACQcEwAkIR0AAiYtABkv
+        LgAeMjYAXyIkABxJCwApYw0ANW0SABpPIQANTj4AIGQkACp9NABYRBcARUgxAGpGPwB6YiwAB05VAB9X
+        XgAee0cADWNZAANXawAAV3QALF52ABZmYAADYXgAHm97AAhxegAmbnEASU5FAHlFRQBWe18Af3RLAJws
+        LACfMzIAojUtAKc7LgCpPi8Aozk3AKxCLQCySS4ArEQzAKZBPgCqRDkAr0s7ALJMNAC6VzcAh0hIAINb
+        TgCnRkUAqUZDAKtJQwC4XUkAr1ZWALJbWQCUdE0AvWRNALdhVwC2Yl8AuGVeAKFwXACwdV8AhH9uALZk
+        YgC6amUAumxrAL9wZQC/f2MAtXdrAL5xawCyf2wAvXJwAMFpTADBbFUAw3NYAMBxZADGemQAxHpsAMl+
+        aADCenYAwXt5ADeGAAA3iQYAPIgFADSECAA7gw8AN4oMADuLCwA2jhIAPI4SADiTGAA4miYAKIY0AC+R
+        NQA2mDAANZY/ADabOAA5oC8AOqc+AEWMDABEjBMASIkWAEaRFQBUkxoAV44iAFiXIgBCjDYAYJAiAGad
+        KAB/misAZZ02AHGWOQB5pDUAJIRAADKFQQAql1UAMJ9RADqrRwAuoFkAMaRUACaWYABimkQAfpNAAHSd
+        QQB6mEcAZ4VqAIalNQD7uB4A3KUuAN+sOwDtriMA4KcqAOOqLADxsSEA/rskAP6+LADjqzEA7LQyAP/A
+        MwD/wToAiJlHAImWVwCZnFwApp9HALGQRwCrjF4ArZtWAIyvVQCKtFwAnLZUAKaiTwCmtEkAsrdKAKW3
+        VAC4u1IAs7xZALq6XACaj2EAt4diAJa2ZwCup2YAuK5jAKayYAC/tm4A3K1CAMi7RgDes1UA6rpMAOm9
+        WQDKgGgAy4d0AMOxYADlvGYAxsFZAP7EQgD/x0gA/chLAOzIVwD8ylcAycNhANzGaADJyHMA1sd1AO3A
+        YAD+zmIA/dFrAO3MegD2z3YA6NF4APzUeQACZ4cABXOJABZ2jQAAbpMABHCSAC1rhgA8eYUAPHeQADKB
+        igBSj4wARY2WAGWalQB3oJAAioiKAImpkwClsoQAtreDAMuOigDOkIQA0paFANSZhQDUnI4Ay5GSANKc
+        kwDIqY8A1qGRANmmlgDfsJkA2rymAMnPkQDlyoIA8c+CAOvSgwDz1IIA/taDAPXVigD+2owA69mWAPTX
+        kwD62pIA+dyZANvLpQDnwawA6MSpAOzJqwDk3KkA6siwAPLXtwD23bMA9t67AO/hpwD74qYA/eSsAP7m
+        sgD75roA/ei4AOHbxAD+68EA////AAAAAAAAAAAAAAAAAAAAV0hIVwAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAEwqKjpCTExBOSgoSAAAAAAAAAAAAAAAAAAAAAAAAEAyRN32+evk5Oj49d89KDwAAAAAAAAAAAAA
+        AAAAANwrTINgb7Krj4+Li4eIr+zwPSjbAAAAAAAAAAAAAABULN77XGZna6G1kpGRjo2Jiq7t2ihIAAAA
+        AAAAAAAAVDDv7LNyfHx8bru1kpKRjo6NjI/C4ThIAAAAAAAAANww7+ivuaJhfHxpbbS5kpKRjo2NhpCF
+        lDHbAAAAAAAALt/svr+/5mF8fHx8YaG5tZKRjo2NjXRdpCkAAAAAABYCCAcGBwYHAwMQfHx8bcCrFAYG
+        BgYGBAMDAjYAAAAABwUFBQUFBQUFBQFjfHxonxcBBQUFBQUFBQUFDAAAAFPIyMjIyMjIyMjIxXtpYmGf
+        p8XIyMjIyMjIyMgeRgAAL8jIyMjIyMjIyMjGe2yp48Oqx8jIyMjIyMjIyMopAAAv/dXJyMjIIWN9fnwN
+        AAEAAZe+vXF6IMjIyMl+gDgA2j/+5MnIyMgbYWFhDgkcHB0cCq26YXwcyMjIxnxtRtaxsPrkycjIyB/i
+        8u4LxcjIyMjFFaNiaSDIyMjJfGFLTlOx+eTJyMjIy/v1JCDIyMjIyMggJ3BlHMjIycZiYU1GU7H7m8jI
+        yMgjpkUdyMjIyMjIyMgcmXIcyMjJx6ycV0exsaZeycjIyBsPHMjIyMjT0cjIyMgZkxzIyMnHhZxXTN6w
+        XmHJyMjIHBjIyMjI0OzozsjIyMgRHMjIycZhbUTbAE9ufMjIyMjFycjIyM/r7ObBzcjIyMXFyMjJxnx1
+        MwAANYFnyMjIyMjIyMgipurpxMS7x8jIyMjIyMnGYpQsAABTPhLIyMjIyMjIyWRhcOnEwL+oyMjIyMjI
+        yckOQ0IAAADFyMjIyMnJych6fGG8xMS/ubmUyMjIyMjJyMgeAAAAAMnIyMjIycnIGmhhnMTkosK5t7Um
+        yMjIyMnJyMwAAAAAADeEeH951NVwXlrD53NhhcC3kpCdnZad1NIlAAAAAAAA2U92aGGg6HdhYYW9YXxi
+        bZ64kY2NjsDxNNcAAAAAAAAAsFF2YV1tnGFhnsNefHx8aG23jpHA8TNEAAAAAAAAAAAAsE+Vm168bp+/
+        n2J8fHx8Yp+57OA0UwAAAAAAAAAAAAAA2TWld/fpu7RufHx8fHxoc/VULtcAAAAAAAAAAAAAAAAAAE81
+        sfF1WV1iYmFhcJOYND8AAAAAAAAAAAAAAAAAAAAAAABTNU+lpZmYpaVPNVIAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAANmwUVGw2gAAAAAAAAAAAAAAAAD//D///8AD//8AAP/8AAA/+AAAH/AAAA/gAAAH4AAAB8AA
+        AAPAAAADgAAAAYAAAAGAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAYAAAAGAAAABwAAAA8AA
+        AAPgAAAH4AAAB/AAAA/4AAAf/AAAP/8AAP//wAP///gf/ygAAAAYAAAAMAAAAAEACAAAAAAAQAIAAAAA
+        AAAAAAAAAAEAAAABAAAAAAAABg8DAAQMDAAXCAYAGQkJAAkQBAAHFggAGxQEABASCAAaFQoAGxgUADs1
+        HgANNT0ACD07ABpNIAAiQCUAVEEWAHRpPAAARV0ACVJWABBeUgATZ08AD2BSABJhXwAaZF8AHnFdAB16
+        WwAicEwALmVdAC92WgAIVW0AF1poAANYcgAAXXoAD2liAAxqbAAHbXkAD3x8AHBMVgB3WlcAWVpgAKM9
+        PQCvSjwAsE08AI5OUgCZV1MAp0VFAKlIRwCsTksAs1hPALleSwCvVFMAr1ZWALJaVwCyW1kAs11ZALVf
+        XACYYV4AlWpbAJF7UAC9YEIAs3hPAK5mVQC3YFUAu2VTALBrVwC2YFgAtWBdALR1VQC6bGkAoHNkALxx
+        bwC+c3AAwGlKAMJuVADDcFcAwnBYAMZ6ZgDJfGQAyH9rADSGCAA5kRUAOZQaADWMJQAzjysAN5cnADqX
+        IAA4mSMANpgsADmfLgAxjD4ALpI7ADSaNgA3nj0AOaEyADegOAA5pTsAOqg/AECLCgBBhxAATpMWAEaX
+        HwBLlh4ATJUfAFSWHQBEmCIASpkiAFGbJABcmiMAZ54pAGWbNQBumD0AdZI5AHKRPQB4kT0AZqAsAH2k
+        LwBmoDUAKpFGAC+YRQAxmkEAOqtEADOjTgA5rEgAfotFAHiTRABshFsAU4t/AICpPAC8pz8A1a45AO+x
+        JADxsiIA/rshAPu6KAD+vigA/78tAOauMgDirDQA4a04APi+OAD+wDEA/sE1AP/COgD+wjwAjodCAI+I
+        RgCMhk8Ajo5MAJKATgCUjUsAjJNKAIyTUgCwgVUAgKNCAIGtTgCSrkQAmK9DAI+wVQCNsFgAoqZKALyn
+        QACrtkoAtbZCAKK2UgC3vFUAiYJsAJeZYACSnm4Ao6NnAKSzYgCnu2UAuLlkALy0aAC3t3oAtbl8ANWx
+        SADhsEQA5rZMAMqAagDKiXwAzIx+AMu3YADEvWgA1rxpALvAYADNwFAA18RZAP7FRADyx04A/slOAOLF
+        VADkx1kA78RbAPfKVwD/zFIA9MVbAM7FZQDXy3UA7sNgAOvDZADpx28A/s5jAPXPaAD6z20A8813APDK
+        eADyzn4A/tRyAPrUewAAY4MAD22FAAFtjwALe4UAA3KMAA10jQASdY4AAG6TAARwkwAMdJMALHmAACJ7
+        jAB9n4MAaJKQAJ6OhwCPrJcApLOMALm6gwCyu5MAiK67AMuQjgDRmoUA1JqJANafkQDYoI0A26aPANyp
+        jwDfrI0Aw7aJAN2rkADkuJQA5ryWAOO3nADlu58A6L6YAM7KhwDPxo0A7NOBAPLThAD91oEA89SIAPvZ
+        jgDsyqwA/uOhAP3kuAD///8AAAAAAAAAAAAAAEhDOEcAAAAAAAAAAAAAAAAAAAAAADFDte/w8O+1MC8A
+        AAAAAAAAAAAAAAA/QXFuuLGLiouyz/A4MwAAAAAAAAAAACvq9VNdZ7+PjoiIg4rN5ykAAAAAAAAAK/LP
+        yGV7YWzAvI+IiIWEx6cuAAAAAABA6s/Hypxhe3tpu7yPjYiFjWOTMwAAAAADCgkHCQgGDnthc8cQBwcH
+        BwEFBAAAACcSEhISEhISDXt7UrYMEhISEhISEiwAACjZ2dnZ2dnZ1Viat8nd2dnZ2dnZ2SYA6ef22dnZ
+        GXd6VAYCAgvBrFsj2dnZd5XmT/P42dnZG5ufD9LZ2SERnWEi2dnWYXxFTPz429nZ3/6mIdnZ2dkglFYi
+        2dnWXn04S/ye2dnZHage2dnb29nZH6AW2dnYuu41s6lQ2dnZFRPZ2dvk4tnZ2RwU2dnXZJhF6pFf2dnZ
+        IdnZ2eH7+d7Z2dkh2dnWXpXmAD1V2dnZ2dnZGqv70cx/2dnZ2dnWUj8AADoX2dnZ2dklYGf30MrH3NnZ
+        2dnZGC0AAOXZ2dnZ2SRfUcbRxcq+sNPZ2dnZ2QAAAABGfnZa46piaPmAVqLCj4Khoa3gOQAAAAAASXFX
+        baRSUbloYV5ro4iIw/QrAAAAAAAAAEmXdZxsostpe3t7ar3Q7ysAAAAAAAAAAABLma79pXRhe3thUq5N
+        MgAAAAAAAAAAAAAAADxOlnFvb3KSRDIAAAAAAAAAAAAAAAAAAAAA6E5LS03oAAAAAAAAAAAA/8P/AP4A
+        fwD4AB8A8AAPAOAABwDAAAMAwAADAIAAAQCAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAABAIAA
+        AQCAAAMAwAADAOAABwDwAA8A+AAfAP4AfwD/gf8AKAAAABAAAAAgAAAAAQAIAAAAAAAAAQAAAAAAAAAA
+        AAAAAQAAAAEAAAAAAAAEFQ8ABRQQAA0WEAASFxAAERgVABEZGAAuHx4AAis4AAQsOABEIiQAH10nACFe
+        IQBsViIAHX1UACN5RQA8eE0AP31QAARdbwAEX3MAB1p0ABFdcAAZfWAANWxsACNldwB+e0AAp2pPAKx6
+        SwC4ZV4Au35dALVuZgC6amcAu29qAL1wbwC/dHAAvnV0AMh8ZgDIfmkAwHh0AD2VIgA4miUAP5okADSa
+        NgAykzkAOqAxADmjNABRlR0ARZkoAFqCOgBDnT0AYoA6AHSXOgBAoDIAS6EwAFShMABfpDIAWKA3AGKh
+        LwB2pDQAfqo+ACCHVgA4okEAOqlBADqsRgA6rUgAGoZrAECTTQBvgkwAdJZBAHeQZABgjnoAgYw/AIyq
+        MgCDrD4Akaw/ALurLgDTrjcA8rQmAP67IgD+vi0A/8E2APbAPgD/wjsAg45JAKePSgCKrkAAhalKAJ60
+        SwCerlQAobJDAKS0SQC5t0QArrZXALGRewCWtmEAqqxwALy9eADStEkA7r1OAOu+WgDrv14AyoFqAMqC
+        bgDKh3QAzIt0AMmHfADPjHgAz5V2ANeefwDcp3cA3qV5AO3FTwD2xUkA/spSAM/IcwDpymUA6ctoAPLH
+        aQDrxHEA7dJ7AP7TdAACb44AFWqKABtsigADcY4AAG6SAARukAAAb5QAAnGRAAxzkAARdpQAHnuSACN+
+        kwCGpYwAxYOEAMyMggDTloIA2qKCAMC1kQDNwoQA1MmSAOTHggDqw5UA9tuZAOLUogAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAP///wAAAAAAAAAiHx8hAAAAAAAAAAAAABpTjWRkdm0cAAAAAAAAh2xYPTlwUE9NYmuG
+        AAAAAIl1cyw/N29ST05LGQAAAAcGBQUBC0BVDQQEAwIKAAB9fX19fUE3XEZ9fX19egBmkH19DyoMCAhU
+        VhZ9gDEiJY+Af4WKFH19FTMOfYAoHmZefX0RGH2Eg30XEX2BWiBqJ319FICCjIuBfRR9gC8mADB9gH+A
+        QnJ4X319fX0yAAB9fX9/PDZ3dHFFfX19ewAAAEMrYC46VzVbUUxhXQAAAACIRy47WUlAP0hxbmkAAAAA
+        AAAbjkooLDREJQAAAAAAAAAAAABqHR1nAAAAAAAA/D8AAPAPAADAAwAAwAMAAIABAACAAQAAAAAAAAAA
+        AAAAAAAAAAAAAIABAACAAQAAwAMAAMADAADwDwAA/D8AACgAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAChMSsCoDErHKAwK0ifLytqny8rgZ4uK4yeLiuMnS0qgZ0t
+        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
+        K/83jg//O61I/zuuSf87rkn/Oq1I/zmgMP84iAT/mLBG//zUcv//ylD//8VC///DPv//wjr//8E2///A
+        Mv//vy7//74p//+9Jf//vCH//7sf//e2H//mqyf/6cJr/0uOEf+HpFv/slxb/5wsLP+bKiqWAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAq0ArVatAK/2tRDH/6Me5/v7mrv7ux3L/6Lta/vnI
+        Wv/+zFv+/tBm/t7Pev43hwL/OqtE/jqtSP47rkn/Oq1I/jqtSP46pTr/N4oI/mydKP7s0XP//spR/v7G
+        RP7/xED//sI7/v7BN/7/wDL//r8u/v++Kf/+vCX+/rsh/v+7Hf/8uR7+67tN/lWJGP83hgH+mqVt/qtN
+        TP+bKir9mysrVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACINCIVrEEs56xBLP/Xo5b//+u9//PO
+        fP/rvl///Mtf///OYf//zmP//9Bn//zbjv8+iQb/OqY6/zuuSf87rkn/O65J/zuuSf87rkn/OqpD/zeP
+        Ef9zoS3//tR0///IS///x0X//8RB///CPP//wTf//8Ay//+/Lf//vSj//7wk//+7IP//ux7/+8xW/0GB
+        CP82jR3/PYoI/6+be/+jPDz/mikp54YkJBUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABeJBiXNhUO/iUO
+        Cv41My//Ni8h/jIpFv40KhT/NiwV/jYsFf82LBb+Ni0Z/jMuH/4MHQD/DCML/hEyFf4gXyj/NqFD/jqt
+        SP47rkn/Oq1I/jqpQf43iQX/xcNl/v7OXv7+x0v/zJ84/mxTG/4/MA7/NikL/jYoCv82KAn+NigI/jYo
+        B/82KAb+NisS/g4dAf8LHwr+Cx0C/hkkEf8qFRT+PBAQ/ockJJcAAAAAAAAAAAAAAAAAAAAAAAAAAIEz
+        IyJBGRD5AAAA/gAAAP4AAAD/AAAA/gAAAP4AAAD/AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD/AAAA/gAA
+        AP4AAAD/ETMV/jinRv47rkn/Oq1I/jqtSP45miX/Ypoi/v3We/7JoEH/GBIH/gAAAP4AAAD/AAAA/gAA
+        AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/pEnJ/mQKCgiAAAAAAAA
+        AAAAAAAAAAAAAKFDLpU/IRv/ABoi/gAeKP4AHij/AB4o/gAeKP4AHij/AB4o/gAeKP8AHij+AB4o/gAe
+        KP4AHij/AB0n/gAWHf4ABQb/CBkK/jejRP47rkn/Oq1I/jqtSP46qkH/N4cC/tXLcv6vjkL/BgUC/gAH
+        Cv4AGCD/AB0n/gAeKP8AHij+AB4o/gAeKP8AHij+AB4o/gAeKP8AHij+AB4o/gAeKP8AHSf+ABYd/owv
+        Mf+YLCyVAAAAAAAAAAAAAAAArEYuD69GLfAFa47/AG6T/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8Ab5T/AG6T/wBtkv8AZIT/F3JZ/zmrSf87rkn/OqxG/zmiNP84lBn/N4cC/77C
+        Zv/pw2P/MGFe/wBniv8AbpL/AG6T/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8AbpP/AG2S/z1WbP+bKyrwmysqEAAAAAAAAAAAsEYsXLBGLP4Ab5T/AG6T/gBuk/4Ab5T/AG6T/gBu
+        k/4Ab5T/AG6T/gBvlP8AbpP+AG6T/gBuk/4Ab5T/AG6T/gBuk/4Ab5T/B3eJ/jepTf44mSL/N4kF/kWN
+        Df6Mrkn/vcNs/vvYhv7RvWz/DnSQ/gBuk/4Ab5T/AG6T/gBvlP8AbpP+AG6T/gBvlP8AbpP+AG6T/gBv
+        lP8AbpP+AG6T/gBvlP8AbpP+AG6T/j9gd/+cLCv+nCsqXAAAAAAAAAAAsEcsqrBHLP4Eb5L/AG+U/gBu
+        k/4Ab5T/AG6T/gBuk/4Ab5T/AG6T/gBvlP8AbpP+AG6T/gBuk/4Ab5T/AG6T/gBvk/4Ec47/IZNp/jij
+        P/4yeQD/qLFp/t3HjP7kxH7/5MBv/ui/ZP7wyGb/c5l8/glykf4Ab5P/AG6T/gBvlP8AbpP+AG6T/gBv
+        lP8AbpP+AG6T/gBvlP8AbpP+AG6T/gBvlP8AbpP+AG6T/kVsgv+hNjT+nCwqqgAAAACxSC0FsUgt6bFH
+        Lf/a0sn/vcSf/5+ug/8GcZL/AG+U/wBvlP8Ab5T/AG+U/wBvlP8HaYj/K3tT/yGGTP8nmGL/KZtf/y6g
+        WP82qU7/OKE2/xg/Bv8DBgD/CQgG/wkIBf8JCAT/CQgE/xMPCP+zkkn//c1i/+fDYP/Btmn/m7B8/yV+
+        OP8ijFj/Em5h/wBpi/8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wZ2i/8omF//Kogz/4KlZv+oRUL/nCwq6Zws
+        KgWxSC0osUgs/rlZQP7+9N///N2X/ubKfP4JcpH/AG6T/gBuk/4Ab5T/AG6T/gBvlP8JY33+Pn4f/jiX
+        H/46rUf/OqtD/jqnPv44mSX/JFkC/gIJBf4ADxP/AA8U/gAPFP4ADxT/AA8U/gAOE/4nIxT/27JW/v7N
+        Xf7/03H/h6o8/jiQE/86rUj+H24//gBlhv8AbpP+AG6T/gBvlP8AbpP+AG6T/gl5h/86rEn+OJsp/mOg
+        N/+2Y2D+nSwq/pwsKiiySS1Wskks/sd6Zv7+8ND/+9qP/ufLfP4JcpH/AG6T/gBuk/4Ab5T/AG6T/gBv
+        lP8DYHb+LHQM/jeJBv43iAP/N4cB/jaGAP47dg7/ChQJ/gBEWv4AbJD/AGyQ/gBskP4AbJD/AGyQ/gBr
+        jv4AOUz/UkQj/vLEXf721oH/QosI/jmjNf86rUj+H24//gBlhv8AbpP+AG6T/gBvlP8AbpP+AG6T/gl5
+        h/86rUn+OaM3/j6KCP/Fh4P+ni8s/p0tKlazSi15s0ot/9KUgv/+7MT//NmK/+jMff8JcpL/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8DYHb/V4s5/8DMjP/W16L/3dqo/+vatv9BPjb/ADdJ/wBskP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8Aao3/Ay47/4hvN//u04D/OYcC/zqkOP86rUj/H24//wBlhv8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wl5iP86rUn/OqpD/zeGAf/Alof/oDEv/50tKnmzSi2Qs0os/tmkk/7+6r3//dmJ/ujM
+        fv4JcpL/AG6T/gBuk/4Ab5T/AG6T/gBvlP8IYnz+v7+f/v3kt/7+5Lb/+N+y/ndrVf4CKzn/AGqO/gBu
+        k/4Ab5T/AG6T/gBuk/4Ab5T/AG6T/gBuk/4Ab5P/AGWH/g8qLv68n17/i6tA/jiQE/86rUj+H24//gBl
+        hv8AbpP+AG6T/gBvlP8AbpP+AG6T/gl5h/86rUn+Oq1H/jeIA/+6nYX+oDQx/p4tKpCzSy2cs0ss/t2t
+        nf7+6bn//dqL/ujRjv4JcpP/AG6T/gBuk/4Ab5T/AG6T/gBvlP8NZYD+y8Kk/v3mvP7947f/q5l7/gol
+        Lf4AZYf/AG6T/gBuk/4Ab5T/AG6T/gBuk/4Ab5T/AG6T/gBuk/4Ab5T/AG6T/gBggP4uOCz/wrZn/kOM
+        Cv84lRv+H208/gBlhv8AbpP+AG6T/gBvlP8AbpP+AG6T/ghzff83jA3+OJUd/jeHAv+4oYf+oTUx/p4u
+        K5u0TC2dtEst/92unf/+6rz/+uGh/4yvXP8EcI//AG+U/wBvlP8Ab5T/AG+U/wBvlP8NZYH/fZ9h/8TP
+        lP/Ww6T/IDAx/wBffv8AbpP/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8AVXH/Wlc5/9rHb/9ZlRr/HV4i/wBlhv8Ab5T/AG+U/wBvlP8Ab5T/AG+U/yB7if+4t0X/iak2/2uh
+        M//PrJ//oDMu/54uK520TC2StEwt/tqmlf787sv/ha1K/jKEDP4Cb43/AG6T/gBuk/4Ab5T/AG6T/gBv
+        lP8FYXn+LXUN/meaN/5HTkn/AFZz/gBuk/4Ab5T/AG6T/gBuk/4Ab5T/AG+T/jiHk/4rgJL/AG6T/gBu
+        k/4Ab5T/AG6T/gBuk/4AbpP/A01k/pF8QP/CwV/+H1oa/gBlhv8AbpP+AG6T/gBvlP8AbpP+AG6T/ih9
+        h//3y1X++9Vy/v7ptv/UoJv+nzAr/p4vKpK1TS18tU0u/tiikv6pxoH/N4YA/jKEDP4Cb43/AG6T/gBu
+        k/4Ab5T/AG6T/gBvlP8DYHf+K3kY/iNLEP4CTGT/AG6T/gBuk/4Ab5T/AG6T/gBuk/4Ab5P/LIGU/trL
+        k/7Jw43/HHqS/gBuk/4Ab5T/AG6T/gBuk/4Ab5T/AG2R/hJKVv+cmlD+KV8h/gBlhv8AbpP+AG6T/gBv
+        lP8AbpP+AG6T/id+jf9nmR/+Ypoh/luZI//Snpr+oDIs/p8vKn21TS1btk8w/9Scif84hgH/N4gE/zKF
+        D/8Cb47/AG+U/wBvlP8Ab5T/AG+U/wBvlP8DYnr/HWIz/wFDU/8AbpL/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8YeZT/xsSW//7akf/92Ir/r7aI/w50kv8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBrj/8LRz7/GE4c/wBl
+        hv8Ab5T/AG+U/wBvlP8Ab5T/AG+U/w10f/82hwT/OJAS/zmHA//JjYj/oTIs/6AwK1u1Ti4utk8v/s+J
+        dP48iQb/OZwp/jWjRv4CcJD/AG6T/gBuk/4Ab5T/AG6T/gBvlP8AXHn+AkFP/gBskP4Ab5T/AG6T/gBu
+        k/4Ab5T/AG6T/gtzk/6quJf//NqU/v3Zjv7+14f//NWA/o6nhP4EcJL/AG6T/gBuk/4Ab5T/AG6T/gBv
+        lP8AZ4r+AztD/gBlh/8AbpP+AG6T/gBvlP8AbpP+AG6T/ghzfv85ozf+OZ4s/lycLv+7bGf+oTIr/qAx
+        Ky62Ti4Itk8u7cNuU/5snDv/OJkj/jWoT/4CcJD/AG6T/gBuk/4Ab5T/AG6T/gBvlP8Aa4/+AGyQ/gBu
+        k/4Ab5T/AG6T/gBuk/4Ab5T/BXGU/oysmv772pb//dqQ/v3Yiv7+14T//dV9/vfQdv5rloH/AW6T/gBu
+        k/4Ab5T/AG6T/gBvlP8AbpP+AGqN/gBtkf8AbpP+AG6T/gBvlP8AbpP+AG6T/gl5h/86rUn+OJMX/oSp
+        W/+uTkf+oTIr7aEyKwgAAAAAtk8us71fQf+Wm1n/N4wM/zWoTv8CcJD/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBvlP8AbpL/LoNr/+3erP/94af//tuR//7Xhv/+1oD//tR5//7S
+        cv/vy23/R4aB/wBuk/8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wl5
+        h/86q0X/N4cD/6ugd/+nPjb/ojMrswAAAAAAAAAAtk8uZrhTM/7BkXD/OogE/jWfP/4CcJD/AG6T/gBu
+        k/4Ab5T/AG6T/gBvlP8AbpP+AG6T/gBuk/4Ab5T/AG6T/gBuk/4Qc2X/NYUK/j6JB/5zpDj/79yb/v3X
+        hf7+1Hv//dN1/v3Rbv7+z2f/3cBl/iZ3g/4AbpP/AG6T/gBvlP8AbpP+AG6T/gBvlP8AbpP+AG6T/gBv
+        lP8AbpP+AG6T/ghzff83jA7+S5IZ/sOEe/+jNi3+ojQrZgAAAAAAAAAAtlAvFrZQLvWtZE3/OFws/xNN
+        LP8AbY//AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wp1gP8znUD/OZwp/zmf
+        Lf83hgH/vMVz//7XhP/+03b//tJw//7Qav//zmP//81c/8KwXv8Pbof/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wZpgv8YSRr/UXBD/6tRSf+iNCv1ojUrFgAAAAAAAAAAAAAAAKtS
+        NKUaYXn/AGyQ/gBuk/4Ab5T/AG6T/gBuk/4Ab5T/AG6T/gBvlP8AbpP+AG6T/gBuk/4Ab5T/BG+H/i+e
+        Vf46rUn/Oqg//jeIBf6HrUf/99yW/v3UeP7+0nD//tBr/v7PZf7/zV7//stY/v7KUv6bm1r/BWyM/gBv
+        lP8AbpP+AG6T/gBvlP8AbpP+AG6T/gBvlP8AbpP+AG6T/gBvlP8AbpP+AGqN/kxVY/+dOC+lAAAAAAAA
+        AAAAAAAAAAAAAGZcWTAAb5T/AG6T/gBuk/4Ab5T/AG6T/gBuk/4Ab5T/AG6T/gBvlP8AbpP+AG6T/gBu
+        k/4Baof/J45R/jqsRv46rEX/N48R/n+oP/793ZT//dR5/v3UeP7+1n7//tR1/v7OYv7/zFn//spT/v7J
+        Tf76xUf/a4FZ/gFsj/8AbpP+AG6T/gBvlP8AbpP+AG6T/gBvlP8AbpP+AG6T/gBvlP8AbpP+AG6T/j1Z
+        bP1yR0owAAAAAAAAAAAAAAAAAAAAAAAAAAABbpLxAG6T/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wFskP8cbjj/OaM3/zeKCP83iAT/O4gE/+PUiv/+1Hf//tV6/+fUhv+KrEP/sLxe//7V
+        eP//y1X//8lO///ISf//xUP/77o9/z1rX/8AbZL/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG6T/yhgebUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3ZHMsdllO8GViYf5Wgn//GndJ/huD
+        YP4cimz/G4Nf/ip/WP95oI7+eZuA/pKlh/5Njxf/N4oI/keODv45hwL/kLBM/v3aiP7+0nD/6NSE/k6R
+        FP44kRT/OIcD/s/IbP7/0Gb//spS/v7GRP7/wz7//sI5/tqqNP9+j1f+eZFc/nmRWv95kFj+eZBZ/nmS
+        X/95mXP+eaae/mR6iP9dTFT+dEdJ8EhWZSkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApVM3abhT
+        MP7Hel//eZ1F/jeMC/46qkL/OaI0/keNDf/12Yz+/tN0/v7Xgf6zwGj/R40O/j2JBf43jg//VpQa/v3b
+        jv7/1n3/k7BJ/jiPEv46rUj/OJgh/kaNDP6cskj/4sxs/v7NWv7/xkT//sE2/v+/MP/+viv+/r0m/v+8
+        Iv/+vCH+/r4p/v/IRf/+3In+7tK//qtENv+mOSv+mT0zaQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAt1EvArhRLq26VjT/x4Vp/2aZNP83jQ3/OqlA/zeOD/9pnSn/x8Zt//vckP9woC//N4gF/zme
+        LP84lRz/O4gD/2ecJ//83ZH/WJUb/ziUGv86rEb/Oq1I/zmfLf84kBP/Q4sJ/4+rPP/Vxl7//8tS//+/
+        Lf//vSf//7wj//+8I///vyv//8hG///agv/14Mj/slNF/6g7LP+nOiytpjksAgAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAALhSLw+4US7Nu1k4/smLb/5omjb/N4wL/jmgMP83jQz+N4cC/mCZ
+        If68w2n/OIcD/jmiNP45mST/QosJ/oysQP7+2of/g6g6/jeHAv46qUH/Oq1I/jqtSP46rUj/OaI0/jiS
+        Fv45iAP/x79U/v/DOP/+vSX+/r0n/v/BMf/+y07+/tyJ/vbhyP+3XE7+qDwr/qg7LM2nOisPAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC4UjAYuFEu1rtZN/7KhWv/eZ5G/jeG
+        AP87iAX+N4YA/j+KB/7o1IP/YJkh/jeNDf43iAT/srxZ/v7Sa/7+1Xb/X5gf/jmcKf47rkn/Oq1I/jqt
+        SP47rkn/Oq1I/jqtSP44mCH/eqIr/v/LT//+vy7+/sU8/v/QXv/+4pz+79TA/rVWRv+pPSv+qT0r1qg8
+        LBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuFIwGLhR
+        Ls66VjT/x3le/7qwhf/X4LX/UZMZ/zeGAP/j1IT/daMy/2mdJ//EwmH//NNv///LVf/XyWn/OIcC/zqp
+        Qf87rkn/O65J/zuuSf87rkn/O65J/zuuSf86pDb/OogE/8vEXf//z13//9h6///rvP/fsqP/r0k2/6s/
+        LP+qPizOqT0sGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAALhSLw+4US6tuFIv/rtZOf/NmoD+dJ9D/jqIBP7c15P//t6S/v7Zgf7+1nn/+dR2/v3V
+        dv5xnyr/OJQb/jqtSP47rkn/Oq1I/jqtSP47rkn/Oq1I/jqtSP46rUf/OJMY/n6pP//+6rn+89zG/sZ8
+        bP+sQSv+q0Ar/qs/LK2qPisPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC4US4Ct1EubbdQLvO6WDf+xnRa/sujhv7149L//u3E/v7m
+        rP6guVz/RYwM/lGRFP43igj/OqpC/jqtSP47rkn/Oq1I/jqtSP46qkL/OaM1/jiZIv43jAv/P4oK/oqr
+        Xv/VnZD+sUo1/q1CLP+sQSzzrEArbatALAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALhRLyS4US6vt1Au/bhT
+        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
+        u/87gw//NZY//zeZOP9EjBP/ubtQ///FQ///wTj//8A0//+/L//+viv/+Lgm/+2uI//gpyr/6rpM//re
+        mv/Smo7/nC0t/5spKq2bKSoHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKo+LAKqPiyvrEQ0/+fB
+        rP/42JH/5bxm/2CQIv86qkT/O65J/zqrQ/9Qkxb/3cdg///HSP//wz3//8E4///AMv//vy3//70n//67
+        Iv/xsSH/5Kww//bPdv/avKb/p0ZF/5sqKq+bKSoCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAq0AshKxC
+        L//nwq3/9tWL/+i7Wf/6yVv/tbxY/ziXH/87rkn/O65J/zqnPf9FkhX/xMBZ///LVf//xEH//8I7///A
+        NP//vy7//70n//+8If/7uB7/6rEw/4ShN/+Fl1L/pT8//5sqKoQAAAAAAAAAAAAAAAAAAAAAAAAAAJs7
+        JzqsQSz82qeV//nbmP/twGD//cxf///OYf/41n//O5AT/zuuSf87rkn/O65J/zqrRP84khb/uLxV///K
+        UP//xUP//8I8///ANP//vy3//70m//+7IP/+vij/f5or/zeJDf+aj2H/nzIy/JEnJzsAAAAAAAAAAAAA
+        AACDMyEBRxsSzhoKB/8kIR3/IhwQ/yMcDf8kHQ7/JB0P/yIfE/8IFAH/Ch8N/xpPIf84pkX/O65J/zqs
+        Rf9Kkxf/99Ft/96vQv9YRBf/KB4J/yQbB/8kGwX/JBoF/yQbBf8SFwX/BxQF/w4WB/8eDAz/ax0dzpAn
+        JwEAAAAAAAAAAJ9CLVAqGRb/ABQa/wAUGv8AFBr/ABQa/wAUGv8AFBr/ABQa/wAUGv8AEBX/AAMD/yp9
+        NP87rkn/O65J/zmbKP+tuVP/emIs/wADBP8AERf/ABQa/wAUGv8AFBr/ABQa/wAUGv8AFBr/ABQa/wAS
+        Gf9fIiT/mCsrUAAAAAAAAAAArkYuugJtkf8AbpP/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBu
+        k/8BZYH/MJ9S/zqoP/85myf/PY8S/6i4Vv+up2b/AWWG/wBuk/8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG6T/ylfev+bKyq6AAAAALBHLROwRy37Am+T/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+T/wd2iv8wn1D/SIkW/6ayYP/lyoL/7shx/7+2bv8Udo//AG+T/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8Ab5P/LWuG/54wL/ucKyoTsUgtU7JJLv/h28T/vbyG/wVwkv8Ab5T/AG+U/wBv
+        lP8eb3v/KIY0/y6gWf8xpFT/OKVA/xxJC/8DBAH/BgUD/wYFA/8KCAT/sZBH//PJX//RwXP/Qow2/yiS
+        VP8DYXj/AG+U/wBvlP8Ab5T/BHSN/y6dUv9imkT/pkE+/5wsKlOySS2HvmVN//7rwf/tz3//BnGS/wBv
+        lP8Ab5T/AG+U/w5iWP83jAz/OJMZ/zeQEv8vZgv/AiYt/wBSbf8AU27/AFNu/wBRbP8ZLy7/3rNV/8nD
+        Yf84lh7/N6NF/wRdbv8Ab5T/AG+U/wBvlP8GdYz/OqxJ/0GRGP+2ZGH/nSwqh7NKLanJfmj//uay/+/P
+        fv8GcZL/AG+U/wBvlP8Ab5T/FmZg/8nPkf/k3Kn/28ul/x4yNv8AZon/AG+U/wBvlP8Ab5T/AG+U/wBj
+        hP9FSDH/urpc/ziXH/83o0X/BF1u/wBvlP8Ab5T/AG+U/wZ1jP86rUn/OJIW/7V3a/+dLSqqs0stu86L
+        dv/+5az/79KH/wZxk/8Ab5T/AG+U/wBvlP88eYX//eW6//fesv9JTkX/AGCA/wBvlP8Ab5T/AG+U/wBv
+        lP8Ab5T/AG+U/wBZd/9/dEv/Xpkh/zaYMP8EXW7/AG+U/wBvlP8Ab5T/BnOH/ziZJP83jxH/sn9s/54u
+        K7u0TC28z4x3//3ouP+Mr1X/Am+Q/wBvlP8Ab5T/AG+U/yZucf+TtWL/hH9u/wBWcv8AbpP/AG+U/wBv
+        lP8CcJP/AW+T/wBvlP8Ab5T/AG+U/wdSaf+tm1b/XJEf/wRba/8Ab5T/AG+U/wBvlP8Xd4z/yLtG/6C4
+        Vv/Bgnr/ni8rvLRNLavNhnD/nb1v/zSECP8Bb4//AG+U/wBvlP8Ab5T/DWRb/zVtEv8IUGf/AG6T/wBv
+        lP8Ab5T/AW+U/4mpk/93oJD/AG+T/wBvlP8Ab5T/AG6T/x9XXv+MmkL/BFlo/wBvlP8Ab5T/AG+U/xp5
+        jv+NqDL/mrZU/8J6dv+fLyustU0uisqAaf83iQb/NI0X/wFvkP8Ab5T/AG+U/wBvlP8JXmP/B05V/wBu
+        k/8Ab5T/AG+U/wBvk/9lmpX/+tmS//fViP9Sj4z/AG+U/wBvlP8Ab5T/AG2R/w1OPv8DWGr/AG+U/wBv
+        lP8Ab5T/B3KF/ziTGf8+jA3/umpl/6AxK4q2Ti5YwWhN/1GTIf83qUv/AXCR/wBvlP8Ab5T/AG+U/wBi
+        g/8AbZH/AG+U/wBvlP8AbpP/RY2W//TXlv/+2Y3//taD/+3Nev8ygYr/AG6T/wBvlP8Ab5T/AGuO/wBk
+        hf8Ab5T/AG+U/wBvlP8GdIr/OqpD/2OcNv+rSUL/oTIrWLZPLhi6Vzj9fpNA/zaeOP8BcJH/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/whxev+Ssmb/69mW//7Yif/+1X3//tJz/9rBbf8WdYz/AG+U/wBv
+        lP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wZ0if84mib/i5VV/6Q5Mf2hMysYAAAAALZQL8GUdE3/IGQk/wBu
+        kf8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBvlP8EcYv/L5E1/ziWHv9Xlh7//tuP//7Tdv/+0Wz//s5i/7iu
+        Y/8Hbo7/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/BG2H/yRgD/+hcFz/ozUrwQAAAAAAAAAAn1M6Wwto
+        hv8AbpP/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AW2O/ymXW/86rEb/PpEU/8bHdP/+1Xz//tFv//7P
+        Zf//zFz//spS/4uWXv8AbZH/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG6T/y9dc/+YOTJbAAAAAAAA
+        AABGYmsDAG6T+QBvlP8Ab5T/AG+U/wBvlP8Ab5T/AG+U/wBukv8ee0f/OZsn/ziQE/+etlX//tV6//TV
+        gf+yvFv/9NFz///LVP//yEv/+8NC/1Z7X/8AbpP/AG+U/wBvlP8Ab5T/AG+U/wBvlP8Ab5T/H2N/3WZL
+        UgMAAAAAAAAAAAAAAABYXmBMg1tO/meFav8khED/JpZg/zKFQf+lsof/sLOB/1eWIP9Ciwr/PYkG/+fS
+        gP/+1n3/Zp0o/ziWHv+Cpzb//dJt///ITP//wjz/7rc0/6ifSf+mn0j/pp9G/6aiT/+msoL/ioiK/3lF
+        Rf5gTlZKAAAAAAAAAAAAAAAAAAAAAAAAAAC3US+UwmtN/3CVOP85nCj/OJQb/6i4Vf/114T/daM0/zqT
+        GP84kBP/fqY3/9vNd/83jxH/Oq1H/zmbJ/9DkBL/pbNE/+zIV///wTP//70n//+8I///vy3//9Fj/+zJ
+        q/+rQjP/pjoslAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALhRLge4Ui+6wnFS/3OXO/84lBr/N4kG/0mO
+        D/+gtVH/OJYe/zqQE/+jtEz/6NF4/zmLCv86rEX/O65J/zqsRv85nSv/TJIV//rIS///vSf//8I2///U
+        bv/syqv/r0s7/6g8LLqnOiwHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALhRLgu4Ui+7wWpM/5mc
+        XP+KtFz/PIgE/8zJcv9Ukxf/qrZN///PYP+xuE7/OZwo/zuuSf87rkn/O65J/zuuSf84mCL/s7dG///M
+        VP//35P/37CZ/65GNP+qPiy7qTwsCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALhR
+        Lge4US6UuVUz/rqLZf90nUH/7+Gn///cjP/dy23/ycJa/1GUGP86q0T/O65J/zuuSf87rkn/Oq1H/zmg
+        L/9fmib/8te3/8Z6aP+sQSz+q0AslKo+LAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAC3US5KuFEv271dPv/OiHD/6siw/2ifN/83hgD/N48Q/ziZI/84mSP/OJYe/ziQ
+        E/9Ulyb/hZhM/7OGY/+zTjj/rUMs26xBLEoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC3UC4Et08uXrZPLsi4UjL+wmtQ/7+BYf+0iWH/q41e/6yM
+        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
+        lP8Mc5D/pLRJ/7BWUdm9YUS4PZUi/wBvkv8Ab5T/BF9z/wBuk/8RdpT/1MmS/83ChP8Mc5H/AG6T/wRd
+        b/8Ab5T/A3GO/0WZKP+pRT+4tlEwdVqCOv8Ab5L/AG+U/wBvlP8Bb5H/QJNN/8/Ic//+03T/qqxw/wFu
+        kv8Ab5T/AG+U/wJvjv9igDr/ojUsdWhCNRcDbZD9AG+U/wBvlP8AbpP/IIdW/1ShMP/t0nv/6cto//7K
+        U/93kGT/AG6T/wBvlP8Ab5T/E2eG9nQyLhcAAAAAj1dEd2+CTP8ykzn/vL14/1KWHf92pDT/nrRL/0uh
+        MP+5t0T/9sA+/9OuN//StEn/sZF7/4dCPXcAAAAAAAAAAGYtGQG6WTiggYw//1GVHf9+qj7/obJD/4Os
+        Pv86rUj/OqlB/4yqMv//y1H/3qV5/6pAL6BnJBsBAAAAAAAAAAAAAAAAaC4aAbhSL3epdkX26sOV/5Gs
+        P/8/miT/OaM0/0CgMv90lkH/xnhh9qxALHdpJhsBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkT8kGLdQ
+        L3m7YkO8smxG3rFrRt64XUO8sUkveZA4JRgAAAAAAAAAAAAAAAAAAAAA8A8AAOAHAADAAwAAgAEAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAEAAIABAADAAwAA8A8AAA==
+</value>
+  </data>
+  <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
+    <value>CenterParent</value>
+  </data>
+  <data name="$this.Text" xml:space="preserve">
+    <value>Package Editor</value>
+  </data>
+  <data name="&gt;&gt;DeleteResourceButton.Name" xml:space="preserve">
+    <value>DeleteResourceButton</value>
+  </data>
+  <data name="&gt;&gt;DeleteResourceButton.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;columnHeader1.Name" xml:space="preserve">
+    <value>columnHeader1</value>
+  </data>
+  <data name="&gt;&gt;columnHeader1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;columnHeader2.Name" xml:space="preserve">
+    <value>columnHeader2</value>
+  </data>
+  <data name="&gt;&gt;columnHeader2.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;columnHeader3.Name" xml:space="preserve">
+    <value>columnHeader3</value>
+  </data>
+  <data name="&gt;&gt;columnHeader3.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;columnHeader5.Name" xml:space="preserve">
+    <value>columnHeader5</value>
+  </data>
+  <data name="&gt;&gt;columnHeader5.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;AddResourceData.Name" xml:space="preserve">
+    <value>AddResourceData</value>
+  </data>
+  <data name="&gt;&gt;AddResourceData.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;DeleteResourceData.Name" xml:space="preserve">
+    <value>DeleteResourceData</value>
+  </data>
+  <data name="&gt;&gt;DeleteResourceData.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;EditResourceData.Name" xml:space="preserve">
+    <value>EditResourceData</value>
+  </data>
+  <data name="&gt;&gt;EditResourceData.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;toolStripSeparator1.Name" xml:space="preserve">
+    <value>toolStripSeparator1</value>
+  </data>
+  <data name="&gt;&gt;toolStripSeparator1.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;SaveResourceData.Name" xml:space="preserve">
+    <value>SaveResourceData</value>
+  </data>
+  <data name="&gt;&gt;SaveResourceData.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;BrowseResourceDataFile.Name" xml:space="preserve">
+    <value>BrowseResourceDataFile</value>
+  </data>
+  <data name="&gt;&gt;BrowseResourceDataFile.Type" xml:space="preserve">
+    <value>System.Windows.Forms.OpenFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;SaveResourceDataFile.Name" xml:space="preserve">
+    <value>SaveResourceDataFile</value>
+  </data>
+  <data name="&gt;&gt;SaveResourceDataFile.Type" xml:space="preserve">
+    <value>System.Windows.Forms.SaveFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;SavePackageDialog.Name" xml:space="preserve">
+    <value>SavePackageDialog</value>
+  </data>
+  <data name="&gt;&gt;SavePackageDialog.Type" xml:space="preserve">
+    <value>System.Windows.Forms.SaveFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;AddResourceButton.Name" xml:space="preserve">
+    <value>AddResourceButton</value>
+  </data>
+  <data name="&gt;&gt;AddResourceButton.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;AddFolderButton.Name" xml:space="preserve">
+    <value>AddFolderButton</value>
+  </data>
+  <data name="&gt;&gt;AddFolderButton.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;toolStripSeparator2.Name" xml:space="preserve">
+    <value>toolStripSeparator2</value>
+  </data>
+  <data name="&gt;&gt;toolStripSeparator2.Type" xml:space="preserve">
+    <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="&gt;&gt;$this.Name" xml:space="preserve">
+    <value>PackageEditorDialog</value>
+  </data>
+  <data name="&gt;&gt;$this.Type" xml:space="preserve">
+    <value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
+</root>
\ No newline at end of file

Modified: trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.Designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.Designer.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.Designer.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -1,7 +1,7 @@
 //------------------------------------------------------------------------------
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:2.0.50727.4961
+//     Runtime Version:2.0.50727.5448
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
 //     the code is regenerated.
@@ -117,6 +117,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap application_browser {
+            get {
+                object obj = ResourceManager.GetObject("application_browser", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         internal static System.Drawing.Bitmap application_export {
             get {
                 object obj = ResourceManager.GetObject("application-export", resourceCulture);
@@ -138,6 +145,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap applications_stack {
+            get {
+                object obj = ResourceManager.GetObject("applications_stack", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         internal static System.Drawing.Bitmap arrow {
             get {
                 object obj = ResourceManager.GetObject("arrow", resourceCulture);
@@ -212,6 +226,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap blueprints {
+            get {
+                object obj = ResourceManager.GetObject("blueprints", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Ensure the Geometry box is checked.
         /// </summary>
@@ -446,6 +467,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap database_share {
+            get {
+                object obj = ResourceManager.GetObject("database_share", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         internal static System.Drawing.Bitmap databases_relation {
             get {
                 object obj = ResourceManager.GetObject("databases-relation", resourceCulture);
@@ -480,6 +508,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap disk {
+            get {
+                object obj = ResourceManager.GetObject("disk", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Diverging.
         /// </summary>
@@ -1638,6 +1673,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap images_stack {
+            get {
+                object obj = ResourceManager.GetObject("images_stack", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to This connection is not compatible.
         /// </summary>
@@ -1885,6 +1927,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap map {
+            get {
+                object obj = ResourceManager.GetObject("map", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         internal static System.Drawing.Bitmap map__arrow {
             get {
                 object obj = ResourceManager.GetObject("map--arrow", resourceCulture);
@@ -2296,6 +2345,13 @@
             }
         }
         
+        internal static System.Drawing.Bitmap printer {
+            get {
+                object obj = ResourceManager.GetObject("printer", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Processed: {0}.
         /// </summary>

Modified: trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.resx
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.resx	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Editors/Properties/Resources.resx	2011-11-08 13:43:56 UTC (rev 6204)
@@ -125,9 +125,15 @@
     <value>Failed to read {0} color(s) in line {1}</value>
     <comment>An error message that is displayed if the expected color count does not match the actual count</comment>
   </data>
+  <data name="Confirm" xml:space="preserve">
+    <value>Confirm</value>
+  </data>
   <data name="InvokeUrlNoMapDefined" xml:space="preserve">
     <value>Cannot get layers. No map definition specified</value>
   </data>
+  <data name="arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\arrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="minus-circle" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\minus-circle.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -137,14 +143,18 @@
   <data name="layer--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\layer--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="HeaderFileMissing" xml:space="preserve">
+    <value>The header file does not exist</value>
+    <comment>A message displayed when the user selects a non-existing file</comment>
+  </data>
   <data name="application--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\application--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_viewoptions" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_viewoptions.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="image" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\image.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="PropEnumNoValues" xml:space="preserve">
-    <value>Could not find possible values for enumerable property</value>
+  <data name="property" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\property.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="DataReadError" xml:space="preserve">
     <value>Unable to read data from the selected column: {0}</value>
@@ -163,12 +173,15 @@
   <data name="tick-circle-frame" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\tick-circle-frame.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="ColorPicker" xml:space="preserve">
-    <value>Color Picker ...</value>
+  <data name="application_browser" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\application-browser.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="icon_printablepage_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_printablepage_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="icon_measure" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_measure.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="application--arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\application--arrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -178,17 +191,17 @@
   <data name="icon_refreshmap_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_refreshmap_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="folder_horizontal" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\folder-horizontal.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="images_stack" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\images-stack.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="block" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\block.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="InvalidResourceIdFolder" xml:space="preserve">
-    <value>Must be valid resource id. Cannot be a folder</value>
+  <data name="icon_print" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_print.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_tasks" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_tasks.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="ruler1" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ruler1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="ColHeaderName" xml:space="preserve">
     <value>Name</value>
@@ -196,33 +209,40 @@
   <data name="SelectSpatialContext" xml:space="preserve">
     <value>Select Spatial Context</value>
   </data>
-  <data name="ui_splitter_horizontal" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\ui-splitter-horizontal.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="database_share" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\database-share.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="InlineSymbolDefinition" xml:space="preserve">
-    <value>Inline Symbol Definition</value>
+  <data name="NotSessionBasedId" xml:space="preserve">
+    <value>Resource ID must not be session based</value>
   </data>
-  <data name="SaveResourceFirst" xml:space="preserve">
-    <value>Please save this resource first</value>
+  <data name="icon_restorecenter" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_restorecenter.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="printer" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\printer.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="layer" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\layer.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="gear--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\gear--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="NoWidgetEditorIface" xml:space="preserve">
     <value>The specified editor does not implement the required IWidgetEditor interface</value>
   </data>
   <data name="control" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\control.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_restorecenter_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_restorecenter_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="sql" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\sql.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="icon_zoomout_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_zoomout_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="PackageReadError" xml:space="preserve">
+    <value>Failed to read package. Error message was: {0}</value>
+    <comment>A message displayed when the package could not be read</comment>
+  </data>
+  <data name="icon_zoomselect_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_zoomselect_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="sql-join-left" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\sql-join-left.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -237,8 +257,8 @@
     <value>New folder</value>
     <comment>The default name of a new folder</comment>
   </data>
-  <data name="FsPreview_GeometryPropertyNodeTooltip" xml:space="preserve">
-    <value>Name: {0}{7}Description: {1}{7}Geometry Types: {2}{7}Read Only: {3}{7}Has Elevation: {4}{7}Has Measure: {5}{7}Spatial Context: {6}</value>
+  <data name="icon_invokescript_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_invokescript_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="grid" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\grid.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -252,9 +272,12 @@
   <data name="table--arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\table--arrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="map--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\map--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="blueprints" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\blueprints.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="PreviewRecordCount" xml:space="preserve">
+    <value>{0} results found</value>
+  </data>
   <data name="server" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\server.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -286,14 +309,17 @@
   <data name="PromptDeleteWidgetAndReferences" xml:space="preserve">
     <value>Delete this widget and all references to it?</value>
   </data>
+  <data name="icon_selectwithin_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_selectwithin_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="gear" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\gear.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="AggregateQuery" xml:space="preserve">
     <value>Aggregate Query</value>
   </data>
-  <data name="InvalidResourceIdNotSpecifiedType" xml:space="preserve">
-    <value>Invalid Resource Identifier. Not the specified type</value>
+  <data name="map--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\map--minus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="icon_zoomin" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_zoomin.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -316,14 +342,11 @@
   <data name="SpecifySecondaryFeatureSource" xml:space="preserve">
     <value>Please specify the secondary feature source</value>
   </data>
-  <data name="globe--arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\globe--arrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="drive-download" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\drive-download.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_null" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_null.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_search" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_search.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="QualitativeName" xml:space="preserve">
     <value>Qualitative</value>
@@ -335,15 +358,24 @@
   <data name="sort-number" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\sort-number.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="DeleteCommand" xml:space="preserve">
-    <value>Delete Command</value>
+  <data name="IncompatibleConnection" xml:space="preserve">
+    <value>This connection is not compatible</value>
   </data>
-  <data name="sql-join-right" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\sql-join-right.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_selectwithin" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_selectwithin.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="map--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\map--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="PromptRepairBrokenFeatureSource" xml:space="preserve">
+    <value>The resource id {0} could not be found. You will now be prompted to select the correct feature source</value>
+  </data>
   <data name="icon_popupscrollup_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_popupscrollup_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="color" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\color.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="icon_plotdwf" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_plotdwf.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -358,6 +390,9 @@
   <data name="ruler" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\ruler.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="application-import" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\application-import.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="document-copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\document-copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -385,19 +420,9 @@
   <data name="ErrorLoadingWmsConfig" xml:space="preserve">
     <value>Error loading WMS configuration document: {0}. A default document will be created</value>
   </data>
-  <data name="SymbolGraphicsImagePlaceholder" xml:space="preserve">
-    <value>&lt;image&gt;</value>
-  </data>
   <data name="ui-separator" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\ui-separator.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="XmlEditorCursorTemplate" xml:space="preserve">
-    <value>Line {0}, Column {1}</value>
-  </data>
-  <data name="InvalidValueError" xml:space="preserve">
-    <value>Invalid value</value>
-    <comment>An error message that is displayed when the entered value is invalid</comment>
-  </data>
   <data name="UnitsKb" xml:space="preserve">
     <value>KB</value>
   </data>
@@ -407,9 +432,6 @@
   <data name="icon_panright_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_panright_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="NoSchemasInFeatureSource" xml:space="preserve">
-    <value>Feature Source has no schemas</value>
-  </data>
   <data name="RdbmsFeatureSource" xml:space="preserve">
     <value>RDBMS Feature Source</value>
   </data>
@@ -420,15 +442,12 @@
   <data name="TestConnectionNoErrors" xml:space="preserve">
     <value>Provider reported no errors</value>
   </data>
-  <data name="globe--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\globe--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="InvokeScriptCmdDescription" xml:space="preserve">
+    <value>Invoke Script Command</value>
   </data>
   <data name="CustomCommandsExported" xml:space="preserve">
     <value>Custom commands exported to {0}</value>
   </data>
-  <data name="StandardQuery" xml:space="preserve">
-    <value>Standard Query</value>
-  </data>
   <data name="ExtentsCalculationCompleted" xml:space="preserve">
     <value>Map extents calculation completed. Click Accept to use the calculated extents.</value>
   </data>
@@ -438,6 +457,11 @@
   <data name="layer-shape-curve" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\layer-shape-curve.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="TooMuchDataWarning" xml:space="preserve">
+    <value>The selected column contains more than {0} different values.
+The calculated averages only accounts for the first {0} distinct values.</value>
+    <comment>A warning message that is displayed if the dataset is too large</comment>
+  </data>
   <data name="NoTypesSelected" xml:space="preserve">
     <value>You must select at least one type</value>
     <comment>A message that is displayed when the user has not selected any resource types</comment>
@@ -455,8 +479,8 @@
   <data name="ParameterOverrideExists" xml:space="preserve">
     <value>Parameter Override already specified</value>
   </data>
-  <data name="sql-join" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\sql-join.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="SymbolGraphicsTextPlaceholder" xml:space="preserve">
+    <value>&lt;text&gt;</value>
   </data>
   <data name="layer--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\layer--minus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -471,6 +495,9 @@
     <value>Unknown types</value>
     <comment>The list entry that represents unknown resource types</comment>
   </data>
+  <data name="gear--pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\gear--pencil.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="icon_panright" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_panright.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -481,12 +508,9 @@
   <data name="icon_home" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_home.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="QuestionResetFsOverrideList" xml:space="preserve">
-    <value>Reset Feature Source override list?</value>
+  <data name="icon_restorecenter_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_restorecenter_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="FieldRequired" xml:space="preserve">
-    <value>This field is required: {0}</value>
-  </data>
   <data name="ResourceDoesntExist" xml:space="preserve">
     <value>Resource doesn't exist</value>
   </data>
@@ -515,12 +539,9 @@
   <data name="icon_pan" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_pan.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_search_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_search_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_viewoptions" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_viewoptions.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\arrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="icon_zoomselect" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_zoomselect.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -530,6 +551,9 @@
   <data name="drive-upload" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\drive-upload.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="document--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\document--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="SpatialContextsFound" xml:space="preserve">
     <value>{0} spatial contexts found</value>
   </data>
@@ -542,19 +566,17 @@
   <data name="globe--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\globe--minus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="TooManyIndiviualValuesError" xml:space="preserve">
+    <value>The selected column contains more than {0} different values, and thus cannot be used for theming with individual values</value>
+    <comment>An error message that is displayed if the selected column has too many distinct values</comment>
+  </data>
   <data name="FdoConnectionStringComponentNotFound" xml:space="preserve">
     <value>The component "{0}" could not be found in the specified FDO connection string</value>
   </data>
-  <data name="FindNothing" xml:space="preserve">
-    <value>Could not find specified string or end of document reached</value>
-  </data>
   <data name="OutputFileMissing" xml:space="preserve">
     <value>You must enter a full path to the output file</value>
     <comment>A message that is displayed when the user has not entered an output file</comment>
   </data>
-  <data name="ErrorMapExtentCalculationFailed" xml:space="preserve">
-    <value>Could not transform extents of any layer in this Map Definition. You will have to specify the extents manually.</value>
-  </data>
   <data name="OdbcCannotInferDriver" xml:space="preserve">
     <value>Could not infer ODBC driver from file name: {0}</value>
   </data>
@@ -564,9 +586,6 @@
   <data name="UnitsMs" xml:space="preserve">
     <value>ms</value>
   </data>
-  <data name="icon_print" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_print.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="databases-relation" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\databases-relation.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -580,6 +599,9 @@
   <data name="arrow-return-180" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\arrow-return-180.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="tick" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\tick.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="arrow-curve-180-left" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\arrow-curve-180-left.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -597,6 +619,16 @@
     <value>You have entered a non-numeric value in the Reference Y field. Due to a bug in MapGuide, this will likely give an error when saving.</value>
     <comment>An error message that is displayed if the user attempts to use an expression as the InsertionPointY value (caused by an xsd bug in MapGuide)</comment>
   </data>
+  <data name="OdbcDriverAccess64" xml:space="preserve">
+    <value>{Microsoft Access Driver (*.mdb, *.accdb)}</value>
+  </data>
+  <data name="SymbolTypeNotSupported" xml:space="preserve">
+    <value>Only symbols of type "Mark" and "Font" are currently supported</value>
+    <comment>A message that is displayed when the user attempts to modify an item with an unsupported type</comment>
+  </data>
+  <data name="FieldRequired" xml:space="preserve">
+    <value>This field is required: {0}</value>
+  </data>
   <data name="icon_copy_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_copy_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -610,8 +642,8 @@
   <data name="CoordinateTransformationFailed" xml:space="preserve">
     <value>Failed to transform coordinates: {0}</value>
   </data>
-  <data name="cross" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\cross.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="SQLQuery" xml:space="preserve">
+    <value>SQL Query</value>
   </data>
   <data name="PropertyTooltip" xml:space="preserve">
     <value>Property: {0}
@@ -653,18 +685,18 @@
   <data name="icon_panup_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_panup_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="icon_selectpolygon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_selectpolygon.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="InvalidConnection" xml:space="preserve">
     <value>This is not a valid connection: {0}</value>
   </data>
   <data name="folder--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\folder--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_plotdwf_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_plotdwf_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_zoom_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_zoom_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="FsPreview_ClassNodeTooltip" xml:space="preserve">
-    <value>Name: {0}{3}Description: {1}{3}Geometry Property: {2}</value>
-  </data>
   <data name="folder--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\folder--minus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -681,12 +713,18 @@
     <value>An error occured while reading column values: {0}</value>
     <comment>An error message that is displayed when the column values could not be read</comment>
   </data>
+  <data name="WmsLayersUpdated" xml:space="preserve">
+    <value>WMS layers updated</value>
+  </data>
   <data name="icon_viewoptions_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_viewoptions_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="icon_invokescript" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_invokescript.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="applications_stack" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\applications-stack.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="PromptUseOffice2010Drivers" xml:space="preserve">
     <value>Use Office 2010 Drivers? (these are 64-bit compatible)</value>
   </data>
@@ -696,9 +734,6 @@
   <data name="icon_pandown_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_pandown_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="image" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\image.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="TransparentName" xml:space="preserve">
     <value>Transparent</value>
   </data>
@@ -722,16 +757,12 @@
   <data name="ExportNoCommandsSelected" xml:space="preserve">
     <value>No commands selected. Nothing to export</value>
   </data>
-  <data name="LoadProcedureVersionExecutionNotSupported" xml:space="preserve">
-    <value>This connection does not support executing this type of Load Procedure</value>
+  <data name="UnknownQueryMode" xml:space="preserve">
+    <value>Unknown query mode</value>
   </data>
-  <data name="SymbolTypeNotSupported" xml:space="preserve">
-    <value>Only symbols of type "Mark" and "Font" are currently supported</value>
-    <comment>A message that is displayed when the user attempts to modify an item with an unsupported type</comment>
+  <data name="FsPreview_GeometryPropertyNodeTooltip" xml:space="preserve">
+    <value>Name: {0}{7}Description: {1}{7}Geometry Types: {2}{7}Read Only: {3}{7}Has Elevation: {4}{7}Has Measure: {5}{7}Spatial Context: {6}</value>
   </data>
-  <data name="arrow-curve" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\arrow-curve.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="FdoConnectionStatus" xml:space="preserve">
     <value>FDO Connection Status: {0}</value>
   </data>
@@ -742,6 +773,9 @@
     <value>Missing column "{0}"</value>
     <comment>An error message that is displayed if the file is missing a required column</comment>
   </data>
+  <data name="icon_zoomrect" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_zoomrect.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="InvalidColorComponent" xml:space="preserve">
     <value>Invalid {0} color component {1} in line {2}</value>
     <comment>An error message that is displayed if a color component is outside the [0-255] range.
@@ -768,11 +802,11 @@
   <data name="icon_pan_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_pan_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="application-search-result" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\application-search-result.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="sql-join" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\sql-join.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="UnknownQueryMode" xml:space="preserve">
-    <value>Unknown query mode</value>
+  <data name="NoSchemasInFeatureSource" xml:space="preserve">
+    <value>Feature Source has no schemas</value>
   </data>
   <data name="SymbolGraphicsPathPlaceholder" xml:space="preserve">
     <value>&lt;path&gt;</value>
@@ -781,15 +815,15 @@
     <value>All files ({0})</value>
     <comment>The text displayed when browsing for all file types</comment>
   </data>
-  <data name="NotSessionBasedId" xml:space="preserve">
-    <value>Resource ID must not be session based</value>
-  </data>
   <data name="NoActiveDataFile" xml:space="preserve">
     <value>No active resource data file selected</value>
   </data>
-  <data name="edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="PreviewQueryElapsed" xml:space="preserve">
+    <value>Preview Completed in {0}ms</value>
   </data>
+  <data name="XmlDocIsValid" xml:space="preserve">
+    <value>Document is valid</value>
+  </data>
   <data name="SelectFeatureClass" xml:space="preserve">
     <value>Select Feature Class</value>
   </data>
@@ -805,30 +839,30 @@
   <data name="arrow-270" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\arrow-270.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="UnmanagedBrowserMultiSelectionNotAllowed" xml:space="preserve">
+    <value>Multiple selection is not allowed when SelectFoldersOnly is set to true</value>
+  </data>
   <data name="AlternateNameMissing" xml:space="preserve">
     <value>You must enter a alternate name, or remove the checkmark</value>
     <comment>A message displayed when the user has not entered an alternate name for a resource</comment>
   </data>
-  <data name="arrow-090" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\arrow-090.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="globe--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\globe--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="globe--pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\globe--pencil.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="DeleteCommand" xml:space="preserve">
+    <value>Delete Command</value>
   </data>
-  <data name="icon_selectwithin_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_selectwithin_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="icon_selectradius" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_selectradius.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="application-export" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\application-export.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_select_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_select_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="GeometryStyleComboDataset" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\GeometryStyleComboDataset.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
   </data>
-  <data name="question" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\question.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_selectradius_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_selectradius_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="TitleError" xml:space="preserve">
     <value>Error</value>
@@ -836,21 +870,21 @@
   <data name="FindReplaceNothing" xml:space="preserve">
     <value>Nothing to replace</value>
   </data>
-  <data name="icon_zoomin_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_zoomin_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_plotdwf_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_plotdwf_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="FilterAll" xml:space="preserve">
-    <value>All File Types (*.*)|*.*</value>
+  <data name="ui_splitter_horizontal" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ui-splitter-horizontal.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="Confirm" xml:space="preserve">
-    <value>Confirm</value>
+  <data name="folder_horizontal" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\folder-horizontal.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="gear--pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\gear--pencil.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="icon_ctxarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_ctxarrow.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="EditWatermarkInstance" xml:space="preserve">
+    <value>Edit Watermark Instance</value>
+  </data>
   <data name="ColorBrewer" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\ColorBrewer.csv;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
   </data>
@@ -861,18 +895,12 @@
   <data name="table" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\table.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="database--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\database--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="question" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\question.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_selectpolygon" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_selectpolygon.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="FindNothing" xml:space="preserve">
+    <value>Could not find specified string or end of document reached</value>
   </data>
-  <data name="icon_pandown" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_pandown.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
-  <data name="icon_selectwithin" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_selectwithin.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="icon_panup" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_panup.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -885,18 +913,17 @@
   <data name="FilterXml" xml:space="preserve">
     <value>XML Files (.xml)|*.xml</value>
   </data>
-  <data name="HeaderFileMissing" xml:space="preserve">
-    <value>The header file does not exist</value>
-    <comment>A message displayed when the user selects a non-existing file</comment>
+  <data name="edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_search" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_search.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_select_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_select_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="ConfirmDeleteResourceData" xml:space="preserve">
     <value>Are you sure you want to delete this resource data?</value>
   </data>
-  <data name="TitleQuestion" xml:space="preserve">
-    <value>Question</value>
+  <data name="globe--pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\globe--pencil.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
   <data name="MgCooker" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -913,15 +940,15 @@
         WFv7wcxM6j8JZ9++bzL/aISV/Ja7mnNYqmY07YouQubg/l1NwG/XLb2y/7oFegAAAABJRU5ErkJggg==
 </value>
   </data>
-  <data name="icon_restorecenter" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_restorecenter.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="QuestionResetFsOverrideList" xml:space="preserve">
+    <value>Reset Feature Source override list?</value>
   </data>
   <data name="SelectPackageFile" xml:space="preserve">
     <value>Select the package file to edit</value>
     <comment>The title of the dialog that the is used to pick the package file to edit</comment>
   </data>
-  <data name="icon_zoomprev" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_zoomprev.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="map" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\map.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="WarningMapExtentCalculation" xml:space="preserve">
     <value>Could not transform extents of one or more layers in this Map Definition. These extents have not been factored into the computed result.</value>
@@ -933,8 +960,8 @@
     <value>Invalid column name</value>
     <comment>An error message that is displayed when the column selected does not exist</comment>
   </data>
-  <data name="SearchCmdDescription" xml:space="preserve">
-    <value>Search Command</value>
+  <data name="SaveResourceFirst" xml:space="preserve">
+    <value>Please save this resource first</value>
   </data>
   <data name="FilterShp" xml:space="preserve">
     <value>ESRI Shape File (*.shp)|*.shp</value>
@@ -943,21 +970,28 @@
     <value>Add this item to the flyout? Clicking "No" will add it before the flyout</value>
     <comment>A question to confirm whether dropping a menu item on a flyout will add it to the flyout or before the flyout</comment>
   </data>
-  <data name="LayerGroupConvertedToBaseLayerGroup" xml:space="preserve">
-    <value>Layer Group ({0}) successfully converted to Base Layer Group ({1})</value>
+  <data name="XmlEditorCursorTemplate" xml:space="preserve">
+    <value>Line {0}, Column {1}</value>
   </data>
   <data name="FilterSdf" xml:space="preserve">
     <value>Autodesk SDF (*.sdf)|*.sdf</value>
   </data>
+  <data name="icon_zoom" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_zoom.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="SelectFolder" xml:space="preserve">
     <value>Select Folder</value>
   </data>
   <data name="application--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\application--minus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="FsPostgreSql" xml:space="preserve">
-    <value>PostgreSQL/PostGIS Feature Source</value>
+  <data name="InlineSymbolDefinition" xml:space="preserve">
+    <value>Inline Symbol Definition</value>
   </data>
+  <data name="BetweenLabel" xml:space="preserve">
+    <value>Between {0} and {1}</value>
+    <comment>The label used for all "between" values in the graduated theme set</comment>
+  </data>
   <data name="OdbcDriverExcel" xml:space="preserve">
     <value>{Microsoft Excel Driver (*.xls)}</value>
   </data>
@@ -970,9 +1004,6 @@
   <data name="arrow-circle-135" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\arrow-circle-135.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="document_task" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\document-task.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
   <data name="WidgetNameExists" xml:space="preserve">
     <value>A widget named {0} already exists</value>
   </data>
@@ -985,15 +1016,18 @@
   <data name="icon_invokeurl" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_invokeurl.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="FunctionTooltip" xml:space="preserve">
-    <value>Function: {1}({2})
-Description: {3}
-Returns: {0}</value>
-    <comment>The tooltip displayed in the text editor when the cursor is over a function name</comment>
+  <data name="sql-join-right" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\sql-join-right.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="SQLQuery" xml:space="preserve">
-    <value>SQL Query</value>
+  <data name="SelectSymbolLibraryFirst" xml:space="preserve">
+    <value>Please specify the symbol library first</value>
   </data>
+  <data name="LayerGroupConvertedToBaseLayerGroup" xml:space="preserve">
+    <value>Layer Group ({0}) successfully converted to Base Layer Group ({1})</value>
+  </data>
+  <data name="icon_zoomnext_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_zoomnext_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="InvalidFieldCountError" xml:space="preserve">
     <value>Invalid field count in line {0}</value>
     <comment>An error message that is displayed if the file has an invalid field count</comment>
@@ -1015,14 +1049,14 @@
     <value>All types</value>
     <comment>The list entry that represents all resource types</comment>
   </data>
-  <data name="SelectSymbolLibraryFirst" xml:space="preserve">
-    <value>Please specify the symbol library first</value>
+  <data name="TitleQuestion" xml:space="preserve">
+    <value>Question</value>
   </data>
   <data name="NoSiteService" xml:space="preserve">
     <value>No site service available</value>
   </data>
-  <data name="OdbcDriverAccess64" xml:space="preserve">
-    <value>{Microsoft Access Driver (*.mdb, *.accdb)}</value>
+  <data name="FsPreview_ClassNodeTooltip" xml:space="preserve">
+    <value>Name: {0}{3}Description: {1}{3}Geometry Property: {2}</value>
   </data>
   <data name="icon_forward" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_forward.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -1030,11 +1064,11 @@
   <data name="InvokeUrlCmdDescription" xml:space="preserve">
     <value>Invoke URL command</value>
   </data>
-  <data name="EditWatermarkInstance" xml:space="preserve">
-    <value>Edit Watermark Instance</value>
+  <data name="icon_pandown" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_pandown.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_zoom_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_zoom_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="PropEnumNoValues" xml:space="preserve">
+    <value>Could not find possible values for enumerable property</value>
   </data>
   <data name="CheckGeometryFirst" xml:space="preserve">
     <value>Ensure the Geometry box is checked</value>
@@ -1048,8 +1082,8 @@
   <data name="icon_copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_copy.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="ruler1" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\ruler1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="gear--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\gear--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="SelectWidget" xml:space="preserve">
     <value>Select widget</value>
@@ -1061,9 +1095,8 @@
   <data name="MoreColorsName" xml:space="preserve">
     <value>More colors...</value>
   </data>
-  <data name="FiletypeMGP" xml:space="preserve">
-    <value>MapGuide Packages ({0})</value>
-    <comment>The text displayed when browsing for MGP files</comment>
+  <data name="icon_null" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_null.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="icon_panleft_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_panleft_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -1077,8 +1110,8 @@
   <data name="OdbcNoMarkedFile" xml:space="preserve">
     <value>Could not infer ODBC driver. No file specified</value>
   </data>
-  <data name="icon_zoom" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_zoom.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_zoomprev" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_zoomprev.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="exclamation" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\exclamation.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -1090,30 +1123,29 @@
     <value>This resource already exists, continue with save?</value>
     <comment>Question similar to the standard response of saving to an exisiting file using the regular save file dialog</comment>
   </data>
-  <data name="FontPreviewError" xml:space="preserve">
-    <value>Cannot Preview Font "{0}"</value>
-    <comment>An error message that is displayed when the rendering fails, using the specified font</comment>
+  <data name="FunctionTooltip" xml:space="preserve">
+    <value>Function: {1}({2})
+Description: {3}
+Returns: {0}</value>
+    <comment>The tooltip displayed in the text editor when the cursor is over a function name</comment>
   </data>
   <data name="icon_clearselect_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_clearselect_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_measure" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_measure.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="LoadProcedureVersionExecutionNotSupported" xml:space="preserve">
+    <value>This connection does not support executing this type of Load Procedure</value>
   </data>
   <data name="NoTransformationRequired" xml:space="preserve">
     <value>No transformation required</value>
   </data>
-  <data name="IncompatibleConnection" xml:space="preserve">
-    <value>This connection is not compatible</value>
+  <data name="StandardQuery" xml:space="preserve">
+    <value>Standard Query</value>
   </data>
-  <data name="TooMuchDataWarning" xml:space="preserve">
-    <value>The selected column contains more than {0} different values.
-The calculated averages only accounts for the first {0} distinct values.</value>
-    <comment>A warning message that is displayed if the dataset is too large</comment>
+  <data name="InvalidResourceIdFolder" xml:space="preserve">
+    <value>Must be valid resource id. Cannot be a folder</value>
   </data>
-  <data name="TooManyIndiviualValuesError" xml:space="preserve">
-    <value>The selected column contains more than {0} different values, and thus cannot be used for theming with individual values</value>
-    <comment>An error message that is displayed if the selected column has too many distinct values</comment>
+  <data name="globe--arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\globe--arrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="OdbcDriverAccess" xml:space="preserve">
     <value>{Microsoft Access Driver (*.mdb)}</value>
@@ -1124,33 +1156,33 @@
   <data name="NoRasterClasses" xml:space="preserve">
     <value>This feature source has no class definitions with raster properties</value>
   </data>
-  <data name="tick" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\tick.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_zoomin_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_zoomin_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="FilterDwf" xml:space="preserve">
-    <value>Autodesk DWF (*.dwf)|*.dwf</value>
+  <data name="ErrorMapExtentCalculationFailed" xml:space="preserve">
+    <value>Could not transform extents of any layer in this Map Definition. You will have to specify the extents manually.</value>
   </data>
   <data name="document" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\document.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="map--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\map--minus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="SearchCmdDescription" xml:space="preserve">
+    <value>Search Command</value>
   </data>
   <data name="SpecifyMapForWebLayout" xml:space="preserve">
     <value>Specify a map for this web layout</value>
   </data>
-  <data name="icon_invokescript_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_invokescript_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="application-search-result" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\application-search-result.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="sql-join-inner" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\sql-join-inner.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="PackageReadError" xml:space="preserve">
-    <value>Failed to read package. Error message was: {0}</value>
-    <comment>A message displayed when the package could not be read</comment>
+  <data name="InvalidValueError" xml:space="preserve">
+    <value>Invalid value</value>
+    <comment>An error message that is displayed when the entered value is invalid</comment>
   </data>
-  <data name="sql" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\sql.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="ColorPicker" xml:space="preserve">
+    <value>Color Picker ...</value>
   </data>
   <data name="LessThanLabel" xml:space="preserve">
     <value>Less than {0}</value>
@@ -1162,8 +1194,8 @@
   <data name="FsSqlServerSpatial" xml:space="preserve">
     <value>SQL Server Spatial Feature Source</value>
   </data>
-  <data name="UnmanagedBrowserMultiSelectionNotAllowed" xml:space="preserve">
-    <value>Multiple selection is not allowed when SelectFoldersOnly is set to true</value>
+  <data name="FilterDwf" xml:space="preserve">
+    <value>Autodesk DWF (*.dwf)|*.dwf</value>
   </data>
   <data name="NewFlyout" xml:space="preserve">
     <value>New Flyout</value>
@@ -1171,11 +1203,13 @@
   <data name="layers-stack-arrange-back" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\layers-stack-arrange-back.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="document--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\document--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="FontPreviewError" xml:space="preserve">
+    <value>Cannot Preview Font "{0}"</value>
+    <comment>An error message that is displayed when the rendering fails, using the specified font</comment>
   </data>
-  <data name="WmsLayersUpdated" xml:space="preserve">
-    <value>WMS layers updated</value>
+  <data name="FiletypeMGP" xml:space="preserve">
+    <value>MapGuide Packages ({0})</value>
+    <comment>The text displayed when browsing for MGP files</comment>
   </data>
   <data name="plus-circle" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\plus-circle.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -1190,17 +1224,17 @@
     <value>The folder must start with \"Library://\", do you want the starting folder to become:\n {0} ?</value>
     <comment>A message that is displayed when the user has not entered a folder starting with Library://</comment>
   </data>
-  <data name="property" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\property.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="FilterAll" xml:space="preserve">
+    <value>All File Types (*.*)|*.*</value>
   </data>
-  <data name="SymbolGraphicsTextPlaceholder" xml:space="preserve">
-    <value>&lt;text&gt;</value>
+  <data name="document_task" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\document-task.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="SelectLayerFirst" xml:space="preserve">
     <value>Please select the layer first</value>
   </data>
-  <data name="application-import" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\application-import.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="icon_search_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_search_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="sum" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\sum.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -1209,11 +1243,11 @@
     <value>&lt;Select column&gt;</value>
     <comment>A placeholder message displayed when the user has not yet selected a column</comment>
   </data>
-  <data name="XmlDocIsValid" xml:space="preserve">
-    <value>Document is valid</value>
+  <data name="icon_tasks" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\icon_tasks.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_zoomnext_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_zoomnext_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="InvalidResourceIdNotSpecifiedType" xml:space="preserve">
+    <value>Invalid Resource Identifier. Not the specified type</value>
   </data>
   <data name="icon_select" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_select.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -1221,21 +1255,20 @@
   <data name="icon_back" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_back.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="BetweenLabel" xml:space="preserve">
-    <value>Between {0} and {1}</value>
-    <comment>The label used for all "between" values in the graduated theme set</comment>
+  <data name="database--plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\database--plus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="InvokeScriptCmdDescription" xml:space="preserve">
-    <value>Invoke Script Command</value>
+  <data name="arrow-090" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\arrow-090.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="GeometryStyleComboDataset" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\GeometryStyleComboDataset.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  <data name="cross" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\cross.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="CommandTypesDataset" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\CommandTypesDataset.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
   </data>
-  <data name="icon_selectradius_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_selectradius_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="arrow-curve" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\arrow-curve.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="edit-indent" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\edit-indent.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -1253,25 +1286,16 @@
   <data name="icon_forward_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\icon_forward_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="icon_zoomselect_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_zoomselect_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="FsPostgreSql" xml:space="preserve">
+    <value>PostgreSQL/PostGIS Feature Source</value>
   </data>
-  <data name="icon_zoomrect" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\icon_zoomrect.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="SymbolGraphicsImagePlaceholder" xml:space="preserve">
+    <value>&lt;image&gt;</value>
   </data>
   <data name="FindEmptyString" xml:space="preserve">
     <value>Cannot Find an Empty String</value>
   </data>
-  <data name="color" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\color.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="disk" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\disk.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="PromptRepairBrokenFeatureSource" xml:space="preserve">
-    <value>The resource id {0} could not be found. You will now be prompted to select the correct feature source</value>
-  </data>
-  <data name="PreviewQueryElapsed" xml:space="preserve">
-    <value>Preview Completed in {0}ms</value>
-  </data>
-  <data name="PreviewRecordCount" xml:space="preserve">
-    <value>{0} results found</value>
-  </data>
 </root>
\ No newline at end of file

Added: trunk/Tools/Maestro/Maestro.Editors/RepositoryIcons.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/RepositoryIcons.cs	                        (rev 0)
+++ trunk/Tools/Maestro/Maestro.Editors/RepositoryIcons.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -0,0 +1,109 @@
+#region Disclaimer / License
+// Copyright (C) 2011, Jackie Ng
+// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// 
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+// 
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+// 
+#endregion
+using System;
+using System.Collections.Generic;
+using System.Text;
+using OSGeo.MapGuide.MaestroAPI;
+using System.Windows.Forms;
+
+namespace Maestro.Editors
+{
+    /// <summary>
+    /// Image list helper class for components that display or interact with Repository resources
+    /// </summary>
+    public class RepositoryIcons
+    {
+        public const int RES_UNKNOWN = 0;
+        public const int RES_FEATURESOURCE = 1;
+        public const int RES_LAYERDEFINITION = 2;
+        public const int RES_MAPDEFINITION = 3;
+        public const int RES_WEBLAYOUT = 4;
+        public const int RES_SYMBOLLIBRARY = 5;
+        public const int RES_PRINTLAYOUT = 6;
+        public const int RES_DRAWINGSOURCE = 7;
+        public const int RES_APPLICATIONDEFINITION = 8;
+        public const int RES_SYMBOLDEFINITION = 9;
+        public const int RES_WATERMARK = 10;
+        public const int RES_LOADPROCEDURE = 11;
+
+        public const int RES_ROOT = 12;
+        public const int RES_FOLDER = 13;
+
+        public static int GetImageIndexForResourceType(ResourceTypes resType)
+        {
+            switch (resType)
+            {
+                case ResourceTypes.ApplicationDefinition:
+                    return RES_APPLICATIONDEFINITION;
+                case ResourceTypes.DrawingSource:
+                    return RES_DRAWINGSOURCE;
+                case ResourceTypes.FeatureSource:
+                    return RES_FEATURESOURCE;
+                case ResourceTypes.Folder:
+                    return RES_FOLDER;
+                case ResourceTypes.LayerDefinition:
+                    return RES_LAYERDEFINITION;
+                case ResourceTypes.LoadProcedure:
+                    return RES_LOADPROCEDURE;
+                case ResourceTypes.MapDefinition:
+                    return RES_MAPDEFINITION;
+                case ResourceTypes.PrintLayout:
+                    return RES_PRINTLAYOUT;
+                case ResourceTypes.SymbolDefinition:
+                    return RES_SYMBOLDEFINITION;
+                case ResourceTypes.SymbolLibrary:
+                    return RES_SYMBOLLIBRARY;
+                case ResourceTypes.WatermarkDefinition:
+                    return RES_WATERMARK;
+                case ResourceTypes.WebLayout:
+                    return RES_WEBLAYOUT;
+                default:
+                    throw new ArgumentException();
+            }
+        }
+
+        public static ImageList CreateImageList()
+        {
+            var imgList = new ImageList();
+
+            PopulateImageList(imgList);
+
+            return imgList;
+        }
+
+        public static void PopulateImageList(ImageList imgList)
+        {
+            imgList.Images.Add(Properties.Resources.document);
+            imgList.Images.Add(Properties.Resources.database_share);
+            imgList.Images.Add(Properties.Resources.layer);
+            imgList.Images.Add(Properties.Resources.map);
+            imgList.Images.Add(Properties.Resources.application_browser);
+            imgList.Images.Add(Properties.Resources.images_stack);
+            imgList.Images.Add(Properties.Resources.printer);
+            imgList.Images.Add(Properties.Resources.blueprints);
+            imgList.Images.Add(Properties.Resources.applications_stack);
+            imgList.Images.Add(Properties.Resources.marker);
+            imgList.Images.Add(Properties.Resources.edit);
+            imgList.Images.Add(Properties.Resources.script__arrow);
+            imgList.Images.Add(Properties.Resources.server);
+            imgList.Images.Add(Properties.Resources.folder_horizontal);
+        }
+    }
+}

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/application-browser.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/application-browser.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/applications-stack.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/applications-stack.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/blueprints.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/blueprints.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/database-share.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/database-share.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/disk.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/disk.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/images-stack.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/images-stack.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/map.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/map.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: trunk/Tools/Maestro/Maestro.Editors/Resources/printer.png
===================================================================
(Binary files differ)


Property changes on: trunk/Tools/Maestro/Maestro.Editors/Resources/printer.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Modified: trunk/Tools/Maestro/Maestro.Packaging/PackageBuilder.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Packaging/PackageBuilder.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Packaging/PackageBuilder.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -862,7 +862,7 @@
                         {
                             if (string.IsNullOrEmpty(ri.Headerpath))
                             {
-                                filemap.Add(new KeyValuePair<string, string>(headerpath, System.IO.Path.Combine(tempfolder, Guid.NewGuid().ToString())));
+                                filemap.Add(new KeyValuePair<string, string>(headerpath, System.IO.Path.Combine(tempfolder, ri.GenerateUniqueName())));
                                 using (System.IO.FileStream fs = new System.IO.FileStream(filemap[filemap.Count - 1].Value, System.IO.FileMode.CreateNew, System.IO.FileAccess.Write, System.IO.FileShare.None))
                                 {
                                     byte[] data = System.Text.Encoding.UTF8.GetBytes(DEFAULT_HEADER);
@@ -882,7 +882,7 @@
                         {
                             if (string.IsNullOrEmpty(ri.Headerpath))
                             {
-                                filemap.Add(new KeyValuePair<string, string>(headerpath, System.IO.Path.Combine(tempfolder, Guid.NewGuid().ToString())));
+                                filemap.Add(new KeyValuePair<string, string>(headerpath, System.IO.Path.Combine(tempfolder, ri.GenerateUniqueName())));
                                 using (System.IO.FileStream fs = new System.IO.FileStream(filemap[filemap.Count - 1].Value, System.IO.FileMode.CreateNew, System.IO.FileAccess.Write, System.IO.FileShare.None))
                                 {
                                     byte[] data = System.Text.Encoding.UTF8.GetBytes(DEFAULT_HEADER);
@@ -895,7 +895,7 @@
                                 if (index < 0)
                                     throw new Exception(string.Format(Properties.Resources.FileMissingError, ri.Headerpath));
 
-                                filemap.Add(new KeyValuePair<string, string>(headerpath, System.IO.Path.Combine(tempfolder, Guid.NewGuid().ToString())));
+                                filemap.Add(new KeyValuePair<string, string>(headerpath, System.IO.Path.Combine(tempfolder, ri.GenerateUniqueName())));
                                 using (System.IO.FileStream fs = new System.IO.FileStream(filemap[filemap.Count - 1].Value, System.IO.FileMode.CreateNew, System.IO.FileAccess.Write, System.IO.FileShare.None))
                                     Utility.CopyStream(zipfile.GetInputStream(index), fs);
                             }
@@ -906,7 +906,7 @@
                                 if (index < 0)
                                     throw new Exception(string.Format(Properties.Resources.FileMissingError, ri.Contentpath));
 
-                                filemap.Add(new KeyValuePair<string, string>(contentpath, System.IO.Path.Combine(tempfolder, Guid.NewGuid().ToString())));
+                                filemap.Add(new KeyValuePair<string, string>(contentpath, System.IO.Path.Combine(tempfolder, ri.GenerateUniqueName())));
                                 using (System.IO.FileStream fs = new System.IO.FileStream(filemap[filemap.Count - 1].Value, System.IO.FileMode.CreateNew, System.IO.FileAccess.Write, System.IO.FileShare.None))
                                     Utility.CopyStream(zipfile.GetInputStream(index), fs);
                             }
@@ -921,7 +921,10 @@
                             string targetpath = filebase + "_DATA_" + EncodeFilename(rdi.ResourceName);
                             if (rdi.EntryType == EntryTypeEnum.Added)
                             {
-                                filemap.Add(new KeyValuePair<string, string>(targetpath, System.IO.Path.Combine(tempfolder, Guid.NewGuid().ToString())));
+                                var tempFilePath = System.IO.Path.Combine(tempfolder, ri.GenerateUniqueName());
+                                filemap.Add(new KeyValuePair<string, string>(targetpath, tempFilePath));
+                                if (File.Exists(rdi.Filename)) 
+                                    File.Copy(rdi.Filename, tempFilePath);
                             }
                             else
                             {
@@ -929,7 +932,7 @@
                                 if (index < 0)
                                     throw new Exception(string.Format(Properties.Resources.FileMissingError, rdi.Filename));
 
-                                filemap.Add(new KeyValuePair<string, string>(targetpath, System.IO.Path.Combine(tempfolder, Guid.NewGuid().ToString())));
+                                filemap.Add(new KeyValuePair<string, string>(targetpath, System.IO.Path.Combine(tempfolder, ri.GenerateUniqueName())));
                                 using (System.IO.FileStream fs = new System.IO.FileStream(filemap[filemap.Count - 1].Value, System.IO.FileMode.CreateNew, System.IO.FileAccess.Write, System.IO.FileShare.None))
                                     Utility.CopyStream(zipfile.GetInputStream(index), fs);
                             }
@@ -991,6 +994,7 @@
                 manifest.Operations.Operation = new System.ComponentModel.BindingList<ResourcePackageManifestOperationsOperation>();
 
                 foreach (ResourceItem ri in items)
+                {
                     if (ri.IsFolder)
                     {
                         AddFolderResource(
@@ -1009,6 +1013,7 @@
                             insertEraseCommands);
 
                         foreach (ResourceDataItem rdi in ri.Items)
+                        {
                             AddResourceData(
                                 manifest,
                                 ri.ResourcePath,
@@ -1017,7 +1022,9 @@
                                 rdi.ResourceName,
                                 RelativeName(rdi.Filename, tempfolder).Replace('\\', '/'),
                                 new System.IO.FileInfo(filemap_lookup[rdi.Filename]).Length);
+                        }
                     }
+                }
 
                 filemap.Add(new KeyValuePair<string, string>(System.IO.Path.Combine(tempfolder, "MgResourcePackageManifest.xml"), System.IO.Path.Combine(tempfolder, Guid.NewGuid().ToString())));
                 using (System.IO.FileStream fs = new System.IO.FileStream(filemap[filemap.Count - 1].Value, System.IO.FileMode.CreateNew, System.IO.FileAccess.Write, System.IO.FileShare.None))

Modified: trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.Designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.Designer.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.Designer.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -1,7 +1,7 @@
 //------------------------------------------------------------------------------
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:2.0.50727.4959
+//     Runtime Version:2.0.50727.5448
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
 //     the code is regenerated.
@@ -61,6 +61,15 @@
         }
         
         /// <summary>
+        ///   Looks up a localized string similar to You must enter a alternate name, or remove the checkmark.
+        /// </summary>
+        internal static string AlternateNameMissing {
+            get {
+                return ResourceManager.GetString("AlternateNameMissing", resourceCulture);
+            }
+        }
+        
+        /// <summary>
         ///   Looks up a localized string similar to Do you want to cancel?.
         /// </summary>
         internal static string CancelConfirmation {
@@ -70,6 +79,33 @@
         }
         
         /// <summary>
+        ///   Looks up a localized string similar to The content file does not exist.
+        /// </summary>
+        internal static string ContentFileMissing {
+            get {
+                return ResourceManager.GetString("ContentFileMissing", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Do you want to remove the selected item?.
+        /// </summary>
+        internal static string DeleteConfirmation {
+            get {
+                return ResourceManager.GetString("DeleteConfirmation", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to An error occured while copying file: {0}.
+        /// </summary>
+        internal static string FileCopyError {
+            get {
+                return ResourceManager.GetString("FileCopyError", resourceCulture);
+            }
+        }
+        
+        /// <summary>
         ///   Looks up a localized string similar to Failed to find file {0} in archive.
         /// </summary>
         internal static string FileMissingError {
@@ -88,6 +124,51 @@
         }
         
         /// <summary>
+        ///   Looks up a localized string similar to Failed to validate the filenames: {0}.
+        /// </summary>
+        internal static string FilenameValidationError {
+            get {
+                return ResourceManager.GetString("FilenameValidationError", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to All files ({0}).
+        /// </summary>
+        internal static string FiletypeAll {
+            get {
+                return ResourceManager.GetString("FiletypeAll", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to MapGuide Packages ({0}).
+        /// </summary>
+        internal static string FiletypeMGP {
+            get {
+                return ResourceManager.GetString("FiletypeMGP", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Zip files ({0}).
+        /// </summary>
+        internal static string FiletypeZip {
+            get {
+                return ResourceManager.GetString("FiletypeZip", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to The header file does not exist.
+        /// </summary>
+        internal static string HeaderFileMissing {
+            get {
+                return ResourceManager.GetString("HeaderFileMissing", resourceCulture);
+            }
+        }
+        
+        /// <summary>
         ///   Looks up a localized string similar to Failed to locate file MgResourcePackageManifest.xml in zip file. Most likely the file is not a MapGuide package..
         /// </summary>
         internal static string InvalidPackageFileError {
@@ -97,6 +178,24 @@
         }
         
         /// <summary>
+        ///   Looks up a localized string similar to New folder.
+        /// </summary>
+        internal static string NewFolder {
+            get {
+                return ResourceManager.GetString("NewFolder", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to An error occured while building package: {0}.
+        /// </summary>
+        internal static string PackageBuildError {
+            get {
+                return ResourceManager.GetString("PackageBuildError", resourceCulture);
+            }
+        }
+        
+        /// <summary>
         ///   Looks up a localized string similar to {0} Package Operations Failed.
         /// </summary>
         internal static string PackageOperationsFailed {
@@ -250,6 +349,15 @@
         }
         
         /// <summary>
+        ///   Looks up a localized string similar to Select the package file to edit.
+        /// </summary>
+        internal static string SelectPackageFile {
+            get {
+                return ResourceManager.GetString("SelectPackageFile", resourceCulture);
+            }
+        }
+        
+        /// <summary>
         ///   Looks up a localized string similar to Uploading Package.
         /// </summary>
         internal static string TitleUploading {

Modified: trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.resx
===================================================================
--- trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.resx	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Packaging/Properties/Resources.resx	2011-11-08 13:43:56 UTC (rev 6204)
@@ -117,10 +117,26 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
+  <data name="AlternateNameMissing" xml:space="preserve">
+    <value>You must enter a alternate name, or remove the checkmark</value>
+    <comment>A message displayed when the user has not entered an alternate name for a resource</comment>
+  </data>
   <data name="CancelConfirmation" xml:space="preserve">
     <value>Do you want to cancel?</value>
     <comment>A confirmation message displayed when the user presses the cancel button</comment>
   </data>
+  <data name="ContentFileMissing" xml:space="preserve">
+    <value>The content file does not exist</value>
+    <comment>A message displayed when the user selects a non-existing file</comment>
+  </data>
+  <data name="DeleteConfirmation" xml:space="preserve">
+    <value>Do you want to remove the selected item?</value>
+    <comment>A confirmation message displayed when deleting a resource</comment>
+  </data>
+  <data name="FileCopyError" xml:space="preserve">
+    <value>An error occured while copying file: {0}</value>
+    <comment>A message displayed when a file copy fails</comment>
+  </data>
   <data name="FileMissingError" xml:space="preserve">
     <value>Failed to find file {0} in archive</value>
     <comment>An error message that is displayed if a file is missing in a package</comment>
@@ -129,10 +145,38 @@
     <value>Filename "{0}" is not relative to "{1}"</value>
     <comment>An internal error that is displayed when a filename inconsistency is encountered</comment>
   </data>
+  <data name="FilenameValidationError" xml:space="preserve">
+    <value>Failed to validate the filenames: {0}</value>
+    <comment>A message displayed when the user enters an invalid filename</comment>
+  </data>
+  <data name="FiletypeAll" xml:space="preserve">
+    <value>All files ({0})</value>
+    <comment>The text displayed when browsing for all file types</comment>
+  </data>
+  <data name="FiletypeMGP" xml:space="preserve">
+    <value>MapGuide Packages ({0})</value>
+    <comment>The text displayed when browsing for MGP files</comment>
+  </data>
+  <data name="FiletypeZip" xml:space="preserve">
+    <value>Zip files ({0})</value>
+    <comment>The text displayed when browsing for zip files</comment>
+  </data>
+  <data name="HeaderFileMissing" xml:space="preserve">
+    <value>The header file does not exist</value>
+    <comment>A message displayed when the user selects a non-existing file</comment>
+  </data>
   <data name="InvalidPackageFileError" xml:space="preserve">
     <value>Failed to locate file MgResourcePackageManifest.xml in zip file. Most likely the file is not a MapGuide package.</value>
     <comment>An error message that is displayed if the package file is invalid</comment>
   </data>
+  <data name="NewFolder" xml:space="preserve">
+    <value>New folder</value>
+    <comment>The default name of a new folder</comment>
+  </data>
+  <data name="PackageBuildError" xml:space="preserve">
+    <value>An error occured while building package: {0}</value>
+    <comment>A message displayed when the package creation fails</comment>
+  </data>
   <data name="PackageOperationsFailed" xml:space="preserve">
     <value>{0} Package Operations Failed</value>
   </data>
@@ -196,6 +240,10 @@
     <value>Awating server processing ...</value>
     <comment>A message that is displayed after the file is uploaded, and the server restores the file</comment>
   </data>
+  <data name="SelectPackageFile" xml:space="preserve">
+    <value>Select the package file to edit</value>
+    <comment>The title of the dialog that the is used to pick the package file to edit</comment>
+  </data>
   <data name="TitleUploading" xml:space="preserve">
     <value>Uploading Package</value>
   </data>

Modified: trunk/Tools/Maestro/Maestro.Packaging/ResourceItem.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Packaging/ResourceItem.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Packaging/ResourceItem.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -140,5 +140,10 @@
             get { return m_headerpath; }
             set { m_headerpath = value; }
         }
+
+        internal string GenerateUniqueName()
+        {
+            return this.ResourcePath.Replace("://", "_").Replace("/", "_").Replace(".", "_") + Guid.NewGuid().ToString();
+        }
     }
 }

Modified: trunk/Tools/Maestro/Maestro.Shared.UI/CollapsiblePanel.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Shared.UI/CollapsiblePanel.cs	2011-11-07 16:31:53 UTC (rev 6203)
+++ trunk/Tools/Maestro/Maestro.Shared.UI/CollapsiblePanel.cs	2011-11-08 13:43:56 UTC (rev 6204)
@@ -117,8 +117,8 @@
         [Category("Collapsible Panel")]
         public bool CanCollapse
         {
-            get { return btnCollapse.Visible; }
-            set { btnCollapse.Visible = value; }
+            get { return btnCollapse.Visible && btnExpand.Visible; }
+            set { btnCollapse.Visible = btnExpand.Visible = value; }
         }
 
         private bool _collapsed;



More information about the mapguide-commits mailing list