[mapguide-commits] r5396 - in sandbox/maestro-3.0: .
Maestro.Base/Templates Maestro.Editors
Maestro.Editors/FeatureSource/Providers
Maestro.Editors/Fusion Maestro.Editors/Fusion/WidgetEditors
Maestro.Editors/Properties Maestro.Editors/Resources
MaestroAPITestRunner MaestroAPITestRunner/Properties
MaestroAPITests OSGeo.MapGuide.MaestroAPI
OSGeo.MapGuide.MaestroAPI/ObjectModels
OSGeo.MapGuide.MaestroAPI/Properties
OSGeo.MapGuide.MaestroAPI/Resources
OSGeo.MapGuide.MaestroAPI.Http SDK
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Sun Nov 21 16:03:39 EST 2010
Author: jng
Date: 2010-11-21 13:03:39 -0800 (Sun, 21 Nov 2010)
New Revision: 5396
Added:
sandbox/maestro-3.0/Maestro.Editors/Fusion/FlexibleLayoutEditorContext.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.Designer.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.resx
sandbox/maestro-3.0/Maestro.Editors/Resources/ui-separator.png
sandbox/maestro-3.0/MaestroAPITestRunner/
sandbox/maestro-3.0/MaestroAPITestRunner/MaestroAPITestRunner.csproj
sandbox/maestro-3.0/MaestroAPITestRunner/Program.cs
sandbox/maestro-3.0/MaestroAPITestRunner/Properties/
sandbox/maestro-3.0/MaestroAPITestRunner/Properties/AssemblyInfo.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Resources/
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Resources/BaseTemplate.ApplicationDefinition.xml
Modified:
sandbox/maestro-3.0/Maestro.Base/Templates/ApplicationDefinitionItemTemplate.cs
sandbox/maestro-3.0/Maestro.Editors/FeatureSource/Providers/GenericCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/AboutWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ActivityIndicatorWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferPanelWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ColorPickerWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/CursorPositionWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/EditableScaleWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ExtentHistoryWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/FeatureInfoWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/GenericWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/HelpWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/IWidgetEditor.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InitialMapViewWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InvokeScriptWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/LegendWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/MapMenuWidgetCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/WidgetEditorBase.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.Designer.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.cs
sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.resx
sandbox/maestro-3.0/Maestro.Editors/Maestro.Editors.csproj
sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.Designer.cs
sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.resx
sandbox/maestro-3.0/MaestroAPITests/ResourceTests.cs
sandbox/maestro-3.0/MaestroAPITests/RuntimeMapTests.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI.Http/HttpCoordinateSystem.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinition.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInfo.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInterfaces.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ObjectFactory.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/PlatformConnectionBase.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.Designer.cs
sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.resx
sandbox/maestro-3.0/SDK/SDK.sln
Log:
3.0 sandbox changes:
- Add a MaestroAPITestRunner project which runs the API test suite (and to workaround the lack of launching custom executables in VS Express)
- Fix the ApplicationDefinition interfaces to allow programmatic creation of flexible layout documents
- Add a guard in the test suite setup to prevent duplicate ObjectFactory registration
- Introduce a FlexibleLayoutEditorContext class that provides widget editor services. Note fusion editor is still not fully implemented and working with this revision
Modified: sandbox/maestro-3.0/Maestro.Base/Templates/ApplicationDefinitionItemTemplate.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Base/Templates/ApplicationDefinitionItemTemplate.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Base/Templates/ApplicationDefinitionItemTemplate.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -25,6 +25,7 @@
using Res = Maestro.Base.Properties.Resources;
using OSGeo.MapGuide.ObjectModels;
using OSGeo.MapGuide.MaestroAPI.Resource;
+using OSGeo.MapGuide.ObjectModels.ApplicationDefinition;
namespace Maestro.Base.Templates
{
@@ -49,7 +50,7 @@
public override IResource CreateItem(IServerConnection conn)
{
- return ObjectFactory.CreateFlexibleLayout(conn);
+ return ObjectFactory.CreateFlexibleLayout(conn, FusionTemplateNames.Slate);
}
}
}
Modified: sandbox/maestro-3.0/Maestro.Editors/FeatureSource/Providers/GenericCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/FeatureSource/Providers/GenericCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/FeatureSource/Providers/GenericCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -79,12 +79,12 @@
var colName = new DataGridViewColumn();
colName.Name = "COL_NAME";
- colName.HeaderText = "Name"; //LOCALIZE
+ colName.HeaderText = Properties.Resources.ColHeaderName;
colName.ReadOnly = true;
colName.CellTemplate = new DataGridViewTextBoxCell();
var colValue = new DataGridViewColumn();
colValue.Name = "COL_VALUE";
- colValue.HeaderText = "Value"; //LOCALIZE
+ colValue.HeaderText = Properties.Resources.ColHeaderValue;
colValue.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
colValue.CellTemplate = new DataGridViewTextBoxCell();
Added: sandbox/maestro-3.0/Maestro.Editors/Fusion/FlexibleLayoutEditorContext.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/FlexibleLayoutEditorContext.cs (rev 0)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/FlexibleLayoutEditorContext.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,79 @@
+#region Disclaimer / License
+// Copyright (C) 2010, 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.Services;
+using OSGeo.MapGuide.ObjectModels.ApplicationDefinition;
+using OSGeo.MapGuide.MaestroAPI;
+
+namespace Maestro.Editors.Fusion
+{
+ public class FlexibleLayoutEditorContext
+ {
+ private IFusionService _service;
+
+ private IApplicationDefinitionWidgetInfoSet _widgetSet;
+ private IApplicationDefinitionTemplateInfoSet _templateSet;
+ private IApplicationDefinitionContainerInfoSet _containerSet;
+
+ public FlexibleLayoutEditorContext(IFusionService service)
+ {
+ _service = service;
+
+ _widgetSet = _service.GetApplicationWidgets();
+ _templateSet = _service.GetApplicationTemplates();
+ _containerSet = _service.GetApplicationContainers();
+ }
+
+ public IWidgetInfo GetWidgetInfo(string name)
+ {
+ Check.NotEmpty(name, "name");
+ foreach (var wgt in _widgetSet.WidgetInfo)
+ {
+ if (name.Equals(wgt.Type))
+ return wgt;
+ }
+ return null;
+ }
+
+ public IApplicationDefinitionContainerInfo GetContainerInfo(string name)
+ {
+ Check.NotEmpty(name, "name");
+ foreach (var cnt in _containerSet.ContainerInfo)
+ {
+ if (name.Equals(cnt.Type))
+ return cnt;
+ }
+ return null;
+ }
+
+ public IApplicationDefinitionTemplateInfo GetTemplateInfo(string name)
+ {
+ Check.NotEmpty(name, "name");
+ foreach (var tpl in _templateSet.TemplateInfo)
+ {
+ if (name.Equals(tpl.Name))
+ return tpl;
+ }
+ return null;
+ }
+ }
+}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/AboutWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/AboutWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/AboutWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,10 +37,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtUrl.Text = _widget.GetValue("AboutURL");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ActivityIndicatorWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ActivityIndicatorWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ActivityIndicatorWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,10 +37,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtElementId.Text = _widget.GetValue("ElementId");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferPanelWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferPanelWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferPanelWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -38,10 +38,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
TextBoxBinder.BindText(txtTarget, this, "Target");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/BufferWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -43,10 +43,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
TextBoxBinder.BindText(txtBorderColorInput, this, "BorderColorInput");
TextBoxBinder.BindText(txtBufferDistance, this, "BufferDistance");
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ColorPickerWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ColorPickerWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ColorPickerWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,10 +37,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtColorInputId.Text = _widget.GetValue("ColorInputId");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/CursorPositionWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/CursorPositionWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/CursorPositionWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -38,10 +38,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtTemplate.Text = _widget.GetValue("Template");
numPrecision.Value = Convert.ToDecimal(_widget.GetValue("Precision"));
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/EditableScaleWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/EditableScaleWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/EditableScaleWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -38,10 +38,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
numPrecision.Value = Convert.ToDecimal(_widget.GetValue("Precision"));
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ExtentHistoryWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ExtentHistoryWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/ExtentHistoryWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -38,10 +38,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtDirection.Text = _widget.GetValue("Direction");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/FeatureInfoWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/FeatureInfoWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/FeatureInfoWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,10 +37,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtTarget.Text = _widget.GetValue("Target");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/GenericWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/GenericWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/GenericWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -42,7 +42,7 @@
private string _xml;
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
_xml = _widget.ToXml();
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/HelpWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/HelpWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/HelpWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,10 +37,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtTarget.Text = _widget.GetValue("Target");
txtUrl.Text = _widget.GetValue("Url");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/IWidgetEditor.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/IWidgetEditor.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/IWidgetEditor.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -27,7 +27,7 @@
{
public interface IWidgetEditor
{
- void Setup(IWidget widget, IEditorService edsvc);
+ void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc);
Control Content { get; }
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InitialMapViewWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InitialMapViewWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InitialMapViewWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -38,10 +38,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtViewType.Text = _widget.GetValue("ViewType");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InvokeScriptWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InvokeScriptWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/InvokeScriptWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,7 +37,7 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/LegendWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/LegendWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/LegendWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,10 +37,10 @@
private IWidget _widget;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
- baseEditor.Setup(_widget, edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
chkHideInvisibleLayers.Checked = Convert.ToBoolean(_widget.GetValue("HideInvisibleLayers"));
chkShowMapFolder.Checked = Convert.ToBoolean(_widget.GetValue("ShowMapFolder"));
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/MapMenuWidgetCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/MapMenuWidgetCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/MapMenuWidgetCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -39,11 +39,11 @@
private IWidget _widget;
private IEditorService _edsvc;
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
_widget = widget;
_edsvc = edsvc;
- baseEditor.Setup(_widget, _edsvc);
+ baseEditor.Setup(_widget, context, edsvc);
txtFolder.Text = _widget.GetValue("Folder");
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/WidgetEditorBase.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/WidgetEditorBase.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetEditors/WidgetEditorBase.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -36,7 +36,7 @@
InitializeComponent();
}
- public void Setup(IWidget widget, IEditorService edsvc)
+ public void Setup(IWidget widget, FlexibleLayoutEditorContext context, IEditorService edsvc)
{
TextBoxBinder.BindText(txtName, widget, "Name");
TextBoxBinder.BindText(txtType, widget, "Type");
Added: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.Designer.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.Designer.cs (rev 0)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.Designer.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,74 @@
+namespace Maestro.Editors.Fusion
+{
+ partial class WidgetReferenceCtrl
+ {
+ /// <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 Component Designer generated code
+
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ this.label1 = new System.Windows.Forms.Label();
+ this.cmbWidgetRefs = new System.Windows.Forms.ComboBox();
+ this.SuspendLayout();
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(19, 18);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(100, 13);
+ this.label1.TabIndex = 0;
+ this.label1.Text = "Referenced Widget";
+ //
+ // cmbWidgetRefs
+ //
+ this.cmbWidgetRefs.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.cmbWidgetRefs.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.cmbWidgetRefs.FormattingEnabled = true;
+ this.cmbWidgetRefs.Location = new System.Drawing.Point(135, 15);
+ this.cmbWidgetRefs.Name = "cmbWidgetRefs";
+ this.cmbWidgetRefs.Size = new System.Drawing.Size(386, 21);
+ this.cmbWidgetRefs.TabIndex = 1;
+ this.cmbWidgetRefs.SelectedIndexChanged += new System.EventHandler(this.cmbWidgetRefs_SelectedIndexChanged);
+ //
+ // WidgetReferenceCtrl
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.Controls.Add(this.cmbWidgetRefs);
+ this.Controls.Add(this.label1);
+ this.Name = "WidgetReferenceCtrl";
+ this.Size = new System.Drawing.Size(575, 53);
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.ComboBox cmbWidgetRefs;
+ }
+}
Added: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.cs (rev 0)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,59 @@
+#region Disclaimer / License
+// Copyright (C) 2010, 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.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Text;
+using System.Windows.Forms;
+using OSGeo.MapGuide.ObjectModels.ApplicationDefinition;
+
+namespace Maestro.Editors.Fusion
+{
+ public partial class WidgetReferenceCtrl : UserControl
+ {
+ private WidgetReferenceCtrl()
+ {
+ InitializeComponent();
+ }
+
+ private IWidgetItem _widgetRef;
+ private IApplicationDefinition _flexLayout;
+
+ public WidgetReferenceCtrl(IWidgetItem item, IEditorService edsvc)
+ : this()
+ {
+ _widgetRef = item;
+ _flexLayout = (IApplicationDefinition)edsvc.GetEditedResource();
+ cmbWidgetRefs.DataSource = _flexLayout.GetAllReferenceableWidgetNames();
+
+ cmbWidgetRefs.SelectedItem = item.Widget;
+ }
+
+ private void cmbWidgetRefs_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (cmbWidgetRefs.SelectedItem != null)
+ {
+ _widgetRef.Widget = cmbWidgetRefs.SelectedItem.ToString();
+ }
+ }
+ }
+}
Added: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.resx
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.resx (rev 0)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetReferenceCtrl.resx 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+</root>
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.Designer.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.Designer.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.Designer.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -28,11 +28,15 @@
/// </summary>
private void InitializeComponent()
{
+ this.components = new System.ComponentModel.Container();
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WidgetSettingsCtrl));
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.trvWidgets = new System.Windows.Forms.TreeView();
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.btnAddWidget = new System.Windows.Forms.ToolStripDropDownButton();
- this.propertiesPanel = new System.Windows.Forms.Panel();
+ this.widgetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.separatorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.flyoutMenuToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.btnAddContainer = new System.Windows.Forms.ToolStripButton();
this.btnRemoveWidget = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
@@ -40,6 +44,8 @@
this.btnMoveDown = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.btnConfigureWidgets = new System.Windows.Forms.ToolStripButton();
+ this.propertiesPanel = new System.Windows.Forms.Panel();
+ this.widgetImageList = new System.Windows.Forms.ImageList(this.components);
this.contentPanel.SuspendLayout();
this.groupBox1.SuspendLayout();
this.toolStrip1.SuspendLayout();
@@ -92,22 +98,40 @@
// btnAddWidget
//
this.btnAddWidget.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+ this.btnAddWidget.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.widgetToolStripMenuItem,
+ this.separatorToolStripMenuItem,
+ this.flyoutMenuToolStripMenuItem});
this.btnAddWidget.Image = global::Maestro.Editors.Properties.Resources.gear__plus;
this.btnAddWidget.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btnAddWidget.Name = "btnAddWidget";
this.btnAddWidget.Size = new System.Drawing.Size(29, 22);
this.btnAddWidget.Text = "toolStripDropDownButton1";
//
- // propertiesPanel
+ // widgetToolStripMenuItem
//
- this.propertiesPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
- | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.propertiesPanel.Location = new System.Drawing.Point(209, 6);
- this.propertiesPanel.Name = "propertiesPanel";
- this.propertiesPanel.Size = new System.Drawing.Size(436, 280);
- this.propertiesPanel.TabIndex = 1;
+ this.widgetToolStripMenuItem.Image = global::Maestro.Editors.Properties.Resources.gear;
+ this.widgetToolStripMenuItem.Name = "widgetToolStripMenuItem";
+ this.widgetToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
+ this.widgetToolStripMenuItem.Text = "Widget";
+ this.widgetToolStripMenuItem.Click += new System.EventHandler(this.widgetToolStripMenuItem_Click);
//
+ // separatorToolStripMenuItem
+ //
+ this.separatorToolStripMenuItem.Image = global::Maestro.Editors.Properties.Resources.ui_separator;
+ this.separatorToolStripMenuItem.Name = "separatorToolStripMenuItem";
+ this.separatorToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
+ this.separatorToolStripMenuItem.Text = "Separator";
+ this.separatorToolStripMenuItem.Click += new System.EventHandler(this.separatorToolStripMenuItem_Click);
+ //
+ // flyoutMenuToolStripMenuItem
+ //
+ this.flyoutMenuToolStripMenuItem.Image = global::Maestro.Editors.Properties.Resources.ui_menu;
+ this.flyoutMenuToolStripMenuItem.Name = "flyoutMenuToolStripMenuItem";
+ this.flyoutMenuToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
+ this.flyoutMenuToolStripMenuItem.Text = "Flyout Menu";
+ this.flyoutMenuToolStripMenuItem.Click += new System.EventHandler(this.flyoutMenuToolStripMenuItem_Click);
+ //
// btnAddContainer
//
this.btnAddContainer.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
@@ -126,6 +150,7 @@
this.btnRemoveWidget.Name = "btnRemoveWidget";
this.btnRemoveWidget.Size = new System.Drawing.Size(23, 22);
this.btnRemoveWidget.Text = "toolStripButton2";
+ this.btnRemoveWidget.Click += new System.EventHandler(this.btnRemoveWidget_Click);
//
// toolStripSeparator1
//
@@ -141,6 +166,7 @@
this.btnMoveUp.Name = "btnMoveUp";
this.btnMoveUp.Size = new System.Drawing.Size(23, 22);
this.btnMoveUp.Text = "toolStripButton3";
+ this.btnMoveUp.Click += new System.EventHandler(this.btnMoveUp_Click);
//
// btnMoveDown
//
@@ -151,6 +177,7 @@
this.btnMoveDown.Name = "btnMoveDown";
this.btnMoveDown.Size = new System.Drawing.Size(23, 22);
this.btnMoveDown.Text = "toolStripButton4";
+ this.btnMoveDown.Click += new System.EventHandler(this.btnMoveDown_Click);
//
// toolStripSeparator2
//
@@ -165,7 +192,27 @@
this.btnConfigureWidgets.Name = "btnConfigureWidgets";
this.btnConfigureWidgets.Size = new System.Drawing.Size(23, 22);
this.btnConfigureWidgets.Text = "Configure";
+ this.btnConfigureWidgets.Click += new System.EventHandler(this.btnConfigureWidgets_Click);
//
+ // propertiesPanel
+ //
+ this.propertiesPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.propertiesPanel.Location = new System.Drawing.Point(209, 6);
+ this.propertiesPanel.Name = "propertiesPanel";
+ this.propertiesPanel.Size = new System.Drawing.Size(436, 280);
+ this.propertiesPanel.TabIndex = 1;
+ //
+ // widgetImageList
+ //
+ this.widgetImageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("widgetImageList.ImageStream")));
+ this.widgetImageList.TransparentColor = System.Drawing.Color.Transparent;
+ this.widgetImageList.Images.SetKeyName(0, "application.png");
+ this.widgetImageList.Images.SetKeyName(1, "gear.png");
+ this.widgetImageList.Images.SetKeyName(2, "ui-separator.png");
+ this.widgetImageList.Images.SetKeyName(3, "ui-menu.png");
+ //
// WidgetSettingsCtrl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@@ -196,5 +243,9 @@
private System.Windows.Forms.ToolStripButton btnMoveDown;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
private System.Windows.Forms.ToolStripButton btnConfigureWidgets;
+ private System.Windows.Forms.ImageList widgetImageList;
+ private System.Windows.Forms.ToolStripMenuItem widgetToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem separatorToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem flyoutMenuToolStripMenuItem;
}
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -27,6 +27,7 @@
using Maestro.Editors.Common;
using OSGeo.MapGuide.ObjectModels.ApplicationDefinition;
using OSGeo.MapGuide.MaestroAPI.Services;
+using OSGeo.MapGuide.MaestroAPI;
namespace Maestro.Editors.Fusion
{
@@ -37,6 +38,11 @@
InitializeComponent();
}
+ const int IDX_CONTAINER = 0;
+ const int IDX_WIDGET = 1;
+ const int IDX_SEPARATOR = 2;
+ const int IDX_MENU = 3;
+
private IFusionService _fsvc;
private IApplicationDefinition _flexLayout;
private string _baseUrl;
@@ -59,5 +65,110 @@
_flexLayout = (IApplicationDefinition)service.GetEditedResource();
}
+
+ private void widgetToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var cnt = this.SelectedContainer;
+ if (cnt != null)
+ {
+ string[] widgets = _flexLayout.GetAllReferenceableWidgetNames();
+ string widget = GenericItemSelectionDialog.SelectItem(
+ Properties.Resources.AddWidgetReference,
+ Properties.Resources.SelectWidget,
+ widgets);
+ if (widget != null)
+ {
+ //at end
+ var item = _flexLayout.CreateWidgetReference(widget);
+ cnt.Insert(item, cnt.ItemCount - 1);
+ this.SelectedNode.Nodes.Add(CreateNode(item));
+ }
+ }
+ }
+
+ private void separatorToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var cnt = this.SelectedContainer;
+ if (cnt != null)
+ {
+ //at end
+ var item = _flexLayout.CreateSeparator();
+ cnt.Insert(item, cnt.ItemCount - 1);
+ this.SelectedNode.Nodes.Add(CreateNode(item));
+ }
+ }
+
+ private void flyoutMenuToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var cnt = this.SelectedContainer;
+ if (cnt != null)
+ {
+ //at end
+ var item = _flexLayout.CreateFlyout(Properties.Resources.NewFlyout);
+ cnt.Insert(item, cnt.ItemCount - 1);
+ this.SelectedNode.Nodes.Add(CreateNode(item));
+ }
+ }
+
+ private static TreeNode CreateNode(IUIItem item)
+ {
+ Check.NotNull(item, "item");
+ var node = new TreeNode();
+ switch (item.Function)
+ {
+ case UiItemFunctionType.Flyout:
+ {
+ node.ImageIndex = node.SelectedImageIndex = IDX_MENU;
+ node.Text = ((IFlyoutItem)item).Label;
+ }
+ break;
+ case UiItemFunctionType.Separator:
+ {
+ node.ImageIndex = node.SelectedImageIndex = IDX_SEPARATOR;
+ node.Text = Properties.Resources.Separator;
+ }
+ break;
+ case UiItemFunctionType.Widget:
+ {
+ node.ImageIndex = node.SelectedImageIndex = IDX_WIDGET;
+ node.Text = ((IWidgetItem)item).Widget;
+ }
+ break;
+ }
+ return node;
+ }
+
+ internal TreeNode SelectedNode
+ {
+ get { return trvWidgets.SelectedNode; }
+ }
+
+ internal IUIItemContainer SelectedContainer
+ {
+ get
+ {
+ return this.SelectedNode.Tag as IUIItemContainer;
+ }
+ }
+
+ private void btnRemoveWidget_Click(object sender, EventArgs e)
+ {
+
+ }
+
+ private void btnMoveUp_Click(object sender, EventArgs e)
+ {
+
+ }
+
+ private void btnMoveDown_Click(object sender, EventArgs e)
+ {
+
+ }
+
+ private void btnConfigureWidgets_Click(object sender, EventArgs e)
+ {
+
+ }
}
}
Modified: sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.resx
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.resx 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Fusion/WidgetSettingsCtrl.resx 2010-11-21 21:03:39 UTC (rev 5396)
@@ -120,4 +120,55 @@
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
+ <metadata name="widgetImageList.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>122, 17</value>
+ </metadata>
+ <data name="widgetImageList.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
+ LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACU
+ CQAAAk1TRnQBSQFMAgEBBAEAASgBAAEoAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
+ 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//8A/wD/AP8AFgAO/xEA
+ IP8BAAL/AfQC8wHwAu8B8ALzAfQC/xEAAfAOBwHwAbwO7wG8AwAB8gHvAfQB7wLwAe8B9AHvAfITAAEH
+ AfMM8gHzAgcB8wzyAfMBBwIAAfIB9wG8Au8CvALvAbwB9wHyEgABvAHzAeoL8gHzArwB8wzyAfMBvAIA
+ Ae8BvAHvAbwB7wK8Ae8BvAHvAbwB7xIAAfAO8wHwAbwB8wzyAfMBvAIAAfQB7wG8AQcB8QL0AfEBBwG8
+ Ae8B9BIAAfAO7wHwAbwB9AzzAfQBvAEAAfICBwHvArwCBwK8Ae8CBwHyEQAB8AH0DPMB9ALwAfQM8wH0
+ AfABAAQHAfABBwIAAQcB8AQHEQAB8AH0AesL8wH0AvAO9AHwAQACvAIHAfABBwIAAQcB8AIHArwBABAH
+ AfEO9AHxAfAO/wHwAQAB8wK8Ae8B8AEHAu8BBwHwAe8CvAHzEQAB8AKSA+0J7AEHAfAO/wHwAgAB/wG8
+ AfABvAHxAvIB8QG8AfABvAH/EgAB8AGSAf8D7QnsAQcB8Q7/AfECAAHwAfIBvAHyAQcC8gEHAfEBvAHy
+ AfASAAHwApID7QnsAQcB8AMHBu8D9wKSAbwCAAHzAbwB8wLwAvIC8AHzAbwB8xIAAfEO/wLxAfAC8QLw
+ ArwCBwW8AfEDAAHzAfAB/wHwAf8B9AHwAf8B8AHzEwAB8QH/AZIM/wHxAfQB8gzxAfIB9AYAAfMC8QHz
+ FgAB8Q7/AfEwAAHzDvIB8wFCAU0BPgcAAT4DAAEoAwABQAMAASADAAEBAQABAQYAAQEWAAP/gQAC/wGA
+ AQEC/wQAAYABAQL/BAAB4AEHAv8EAAHAAQMC/wQAAcABAwL/BAABwAEDAv8EAAGAAQEC/wQAAoEC/wQA
+ AoEGAAGAAQEC/wQAAcABAwL/BAABwAEDAv8EAAHAAQMC/wQAAeABBwL/BAAB/AE/Av8CAAb/AgAL
+</value>
+ </data>
</root>
\ No newline at end of file
Modified: sandbox/maestro-3.0/Maestro.Editors/Maestro.Editors.csproj
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Maestro.Editors.csproj 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Maestro.Editors.csproj 2010-11-21 21:03:39 UTC (rev 5396)
@@ -262,6 +262,7 @@
<Compile Include="Fusion\FlexibleLayoutEditor.Designer.cs">
<DependentUpon>FlexibleLayoutEditor.cs</DependentUpon>
</Compile>
+ <Compile Include="Fusion\FlexibleLayoutEditorContext.cs" />
<Compile Include="Fusion\FlexLayoutSettingsCtrl.cs">
<SubType>UserControl</SubType>
</Compile>
@@ -426,6 +427,12 @@
<Compile Include="Fusion\WidgetEditors\WidgetEditorBase.Designer.cs">
<DependentUpon>WidgetEditorBase.cs</DependentUpon>
</Compile>
+ <Compile Include="Fusion\WidgetReferenceCtrl.cs">
+ <SubType>UserControl</SubType>
+ </Compile>
+ <Compile Include="Fusion\WidgetReferenceCtrl.Designer.cs">
+ <DependentUpon>WidgetReferenceCtrl.cs</DependentUpon>
+ </Compile>
<Compile Include="Fusion\WidgetSettingsCtrl.cs">
<SubType>UserControl</SubType>
</Compile>
@@ -965,6 +972,9 @@
<EmbeddedResource Include="Fusion\WidgetEditors\WidgetEditorBase.resx">
<DependentUpon>WidgetEditorBase.cs</DependentUpon>
</EmbeddedResource>
+ <EmbeddedResource Include="Fusion\WidgetReferenceCtrl.resx">
+ <DependentUpon>WidgetReferenceCtrl.cs</DependentUpon>
+ </EmbeddedResource>
<EmbeddedResource Include="Fusion\WidgetSettingsCtrl.resx">
<DependentUpon>WidgetSettingsCtrl.cs</DependentUpon>
</EmbeddedResource>
@@ -1654,6 +1664,7 @@
<Content Include="FsEditorMap.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
+ <None Include="Resources\ui-separator.png" />
<None Include="Resources\gear--plus.png" />
<None Include="Resources\gear--pencil.png" />
<None Include="Resources\gear--minus.png" />
Modified: sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.Designer.cs
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.Designer.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.Designer.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -61,6 +61,15 @@
}
/// <summary>
+ /// Looks up a localized string similar to Add Widget Reference.
+ /// </summary>
+ internal static string AddWidgetReference {
+ get {
+ return ResourceManager.GetString("AddWidgetReference", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Aggregate Query.
/// </summary>
internal static string AggregateQuery {
@@ -204,6 +213,24 @@
}
/// <summary>
+ /// Looks up a localized string similar to Name.
+ /// </summary>
+ internal static string ColHeaderName {
+ get {
+ return ResourceManager.GetString("ColHeaderName", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Value.
+ /// </summary>
+ internal static string ColHeaderValue {
+ get {
+ return ResourceManager.GetString("ColHeaderValue", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to "ColorName","NumOfColors","Type","CritVal","ColorNum","ColorLetter","R","G","B","SchemeType"
///"Accent",3,"qual",,1,"A",127,201,127,"Qualitative"
///,,,,2,"B",190,174,212,
@@ -2010,6 +2037,24 @@
}
/// <summary>
+ /// Looks up a localized string similar to Select widget.
+ /// </summary>
+ internal static string SelectWidget {
+ get {
+ return ResourceManager.GetString("SelectWidget", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Separator.
+ /// </summary>
+ internal static string Separator {
+ get {
+ return ResourceManager.GetString("Separator", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Sequential.
/// </summary>
internal static string SequentialName {
@@ -2219,6 +2264,13 @@
}
}
+ internal static System.Drawing.Bitmap ui_separator {
+ get {
+ object obj = ResourceManager.GetObject("ui-separator", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
internal static System.Drawing.Bitmap ui_splitter_horizontal {
get {
object obj = ResourceManager.GetObject("ui_splitter_horizontal", resourceCulture);
Modified: sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.resx
===================================================================
--- sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.resx 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/Maestro.Editors/Properties/Resources.resx 2010-11-21 21:03:39 UTC (rev 5396)
@@ -166,6 +166,9 @@
<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>
<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>
@@ -175,8 +178,8 @@
<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_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 name="ColHeaderName" xml:space="preserve">
+ <value>Name</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>
@@ -187,12 +190,12 @@
<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="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="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>
@@ -247,9 +250,15 @@
<data name="document--pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\document--pencil.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</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>
+ <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="gear--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\gear--minus.png;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>
@@ -325,6 +334,9 @@
<data name="FilterSqlite" xml:space="preserve">
<value>SQLite files|*.sqlite;*.db;*.sdx;*.slt</value>
</data>
+ <data name="ColHeaderValue" xml:space="preserve">
+ <value>Value</value>
+ </data>
<data name="InvalidRestorePathError" xml:space="preserve">
<value>An error occured while validating the restore path: {0}\nIt should have the format: \"Libray://folder/folder/\".</value>
<comment>A message that is displayed when the restore path does not validate</comment>
@@ -343,10 +355,6 @@
<data name="icon_fitwindow" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon_fitwindow.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</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>
@@ -366,14 +374,17 @@
<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>
<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="StandardQuery" xml:space="preserve">
<value>Standard Query</value>
</data>
- <data name="FileDownloaded" xml:space="preserve">
- <value>File Downloaded</value>
+ <data name="OverwriteDisplayScales" xml:space="preserve">
+ <value>Overwrite the current display scales?</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>
@@ -385,19 +396,16 @@
<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="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="gear--arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\gear--arrow.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="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>
</data>
<data name="UnknownResourceTypes" xml:space="preserve">
<value>Unknown types</value>
<comment>The list entry that represents unknown resource types</comment>
</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>
<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>
@@ -417,6 +425,9 @@
<data name="icon_tasks_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon_tasks_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
+ <data name="gear--exclamation" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\gear--exclamation.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
<data name="icon_zoomout" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon_zoomout.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@@ -454,9 +465,6 @@
<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="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="FindNothing" xml:space="preserve">
<value>Could not find specified string or end of document reached</value>
</data>
@@ -475,6 +483,9 @@
<data name="UnitsMs" xml:space="preserve">
<value>ms</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>
+ </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>
@@ -505,6 +516,9 @@
<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>
+ <data name="FileDownloaded" xml:space="preserve">
+ <value>File Downloaded</value>
+ </data>
<data name="ColumnHasNoValidDataError" xml:space="preserve">
<value>The selected column had no non-null values and cannot be used.</value>
<comment>An error message that is displayed if the user selects a column with no valid data</comment>
@@ -512,9 +526,6 @@
<data name="SaveResource" xml:space="preserve">
<value>Save Resource</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>
<data name="PropertyTooltip" xml:space="preserve">
<value>Property: {0}
Type: {1}</value>
@@ -526,6 +537,9 @@
<data name="icon_help" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon_help.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
+ <data name="WidgetUpdated" xml:space="preserve">
+ <value>Widget updated</value>
+ </data>
<data name="icon_back_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon_back_disabled.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@@ -533,8 +547,9 @@
<value>An error occured while copying file: {0}</value>
<comment>A message displayed when a file copy fails</comment>
</data>
- <data name="layers-stack-arrange" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\layers-stack-arrange.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</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="RepositoryWipeWarning" xml:space="preserve">
<value>You have selected to restore the package at the root.
@@ -605,9 +620,8 @@
<data name="cross-script" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cross-script.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</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="LoadProcedureVersionExecutionNotSupported" xml:space="preserve">
+ <value>This connection does not support executing this type of Load Procedure</value>
</data>
<data name="SymbolTypeNotSupported" xml:space="preserve">
<value>Only symbols of type "Mark" and "Font" are currently supported</value>
@@ -623,9 +637,6 @@
<data name="UnknownQueryMode" xml:space="preserve">
<value>Unknown query mode</value>
</data>
- <data name="OverwriteDisplayScales" xml:space="preserve">
- <value>Overwrite the current display scales?</value>
- </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>
@@ -650,9 +661,6 @@
<data name="NoActiveDataFile" xml:space="preserve">
<value>No active resource data file selected</value>
</data>
- <data name="SelectFeatureClass" xml:space="preserve">
- <value>Select Feature Class</value>
- </data>
<data name="icon_zoomnext" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon_zoomnext.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@@ -669,8 +677,8 @@
<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="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="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>
<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>
@@ -687,6 +695,9 @@
<data name="TitleError" xml:space="preserve">
<value>Error</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>
<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>
@@ -696,14 +707,14 @@
<data name="Confirm" xml:space="preserve">
<value>Confirm</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="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="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="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>
<data name="FilenameValidationError" xml:space="preserve">
<value>Failed to validate the filenames: {0}</value>
@@ -794,13 +805,11 @@
<data name="NewLayer" xml:space="preserve">
<value>New Layer</value>
</data>
- <data name="TooManyValuesError" xml:space="preserve">
- <value>The selected column contains more than {0} different values, and thus cannot be used for theming</value>
- <comment>An error message that is displayed if the selected column has too many distinct values</comment>
+ <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="DivergingName" xml:space="preserve">
- <value>Diverging</value>
- <comment>A display name for the Diverging data type</comment>
+ <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="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>
@@ -818,6 +827,10 @@
<value>Invalid field count in line {0}</value>
<comment>An error message that is displayed if the file has an invalid field count</comment>
</data>
+ <data name="DivergingName" xml:space="preserve">
+ <value>Diverging</value>
+ <comment>A display name for the Diverging data type</comment>
+ </data>
<data name="icon_buffer" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon_buffer.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@@ -834,8 +847,8 @@
<data name="NoSiteService" xml:space="preserve">
<value>No site service available</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>
+ <data name="layers-stack-arrange" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\layers-stack-arrange.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="InvokeUrlCmdDescription" xml:space="preserve">
<value>Invoke URL command</value>
@@ -846,18 +859,25 @@
<data name="PropEnumNoValues" xml:space="preserve">
<value>Could not find possible values for enumerable property</value>
</data>
+ <data name="SelectColumnPlaceholder" xml:space="preserve">
+ <value><Select column></value>
+ <comment>A placeholder message displayed when the user has not yet selected a column</comment>
+ </data>
<data name="ModeNotAllowed" xml:space="preserve">
<value>Mode not allowed: {0}</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>
+ <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="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="LessThanLabel" xml:space="preserve">
- <value>Less than {0}</value>
- <comment>The label used for the lowest value in the graduated theme set</comment>
+ <data name="TooManyValuesError" xml:space="preserve">
+ <value>The selected column contains more than {0} different values, and thus cannot be used for theming</value>
+ <comment>An error message that is displayed if the selected column has too many distinct values</comment>
</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>
@@ -884,8 +904,8 @@
<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="LoadProcedureVersionExecutionNotSupported" xml:space="preserve">
- <value>This connection does not support executing this type of Load Procedure</value>
+ <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="IncompatibleConnection" xml:space="preserve">
<value>This connection is not compatible</value>
@@ -901,8 +921,8 @@
<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="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>
@@ -923,9 +943,13 @@
<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="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 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="LessThanLabel" xml:space="preserve">
+ <value>Less than {0}</value>
+ <comment>The label used for the lowest value in the graduated theme set</comment>
+ </data>
<data name="FsSqlServerSpatial" xml:space="preserve">
<value>SQL Server Spatial Feature Source</value>
</data>
@@ -955,15 +979,15 @@
<value>The content file does not exist</value>
<comment>A message displayed when the user selects a non-existing file</comment>
</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="SelectFeatureClass" xml:space="preserve">
+ <value>Select Feature Class</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>
</data>
- <data name="SelectColumnPlaceholder" xml:space="preserve">
- <value><Select column></value>
- <comment>A placeholder message displayed when the user has not yet selected a column</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="XmlDocIsValid" xml:space="preserve">
<value>Document is valid</value>
@@ -1001,31 +1025,25 @@
<data name="FsMySql" xml:space="preserve">
<value>MySQL Feature Source</value>
</data>
+ <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_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="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 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="gear--arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\gear--arrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <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="gear--exclamation" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\gear--exclamation.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="AddWidgetReference" xml:space="preserve">
+ <value>Add Widget Reference</value>
</data>
- <data name="gear--minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\gear--minus.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="SelectWidget" xml:space="preserve">
+ <value>Select widget</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 name="Separator" xml:space="preserve">
+ <value>Separator</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="WidgetUpdated" xml:space="preserve">
- <value>Widget updated</value>
- </data>
</root>
\ No newline at end of file
Added: sandbox/maestro-3.0/Maestro.Editors/Resources/ui-separator.png
===================================================================
(Binary files differ)
Property changes on: sandbox/maestro-3.0/Maestro.Editors/Resources/ui-separator.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Property changes on: sandbox/maestro-3.0/MaestroAPITestRunner
___________________________________________________________________
Added: svn:ignore
+ obj
bin
*.user
Added: sandbox/maestro-3.0/MaestroAPITestRunner/MaestroAPITestRunner.csproj
===================================================================
--- sandbox/maestro-3.0/MaestroAPITestRunner/MaestroAPITestRunner.csproj (rev 0)
+++ sandbox/maestro-3.0/MaestroAPITestRunner/MaestroAPITestRunner.csproj 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{50C12B5C-387C-4007-A1D1-CB181CB474CC}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>MaestroAPITestRunner</RootNamespace>
+ <AssemblyName>MaestroAPITestRunner</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <UseVSHostingProcess>false</UseVSHostingProcess>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="nunit-console-runner, Version=2.5.5.10112, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Thirdparty\NUnit\bin\net-2.0\lib\nunit-console-runner.dll</HintPath>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\MaestroAPITests\MaestroAPITests.csproj">
+ <Project>{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}</Project>
+ <Name>MaestroAPITests</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\OSGeo.MapGuide.MaestroAPI\OSGeo.MapGuide.MaestroAPI.csproj">
+ <Project>{80FA3158-8B5F-48D1-A393-0378AFE48A7E}</Project>
+ <Name>OSGeo.MapGuide.MaestroAPI</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
\ No newline at end of file
Added: sandbox/maestro-3.0/MaestroAPITestRunner/Program.cs
===================================================================
--- sandbox/maestro-3.0/MaestroAPITestRunner/Program.cs (rev 0)
+++ sandbox/maestro-3.0/MaestroAPITestRunner/Program.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,38 @@
+#region Disclaimer / License
+// Copyright (C) 2010, 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.Linq;
+using System.Text;
+
+namespace MaestroAPITestRunner
+{
+ /// <summary>
+ /// This is a simple NUnit test runner, to work around the fact that you can't launch an external program
+ /// in a debug session (in our case, nunit-console.exe) in Visual Studio Express.
+ /// </summary>
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ NUnit.ConsoleRunner.Runner.Main(args);
+ }
+ }
+}
Added: sandbox/maestro-3.0/MaestroAPITestRunner/Properties/AssemblyInfo.cs
===================================================================
--- sandbox/maestro-3.0/MaestroAPITestRunner/Properties/AssemblyInfo.cs (rev 0)
+++ sandbox/maestro-3.0/MaestroAPITestRunner/Properties/AssemblyInfo.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("MaestroAPITestRunner")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("MaestroAPITestRunner")]
+[assembly: AssemblyCopyright("Copyright © 2010")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("ab92ee69-5f95-4f60-bb15-b75a26c441da")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
Modified: sandbox/maestro-3.0/MaestroAPITests/ResourceTests.cs
===================================================================
--- sandbox/maestro-3.0/MaestroAPITests/ResourceTests.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/MaestroAPITests/ResourceTests.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -37,6 +37,8 @@
using OSGeo.MapGuide.MaestroAPI;
using OSGeo.MapGuide.ObjectModels.LoadProcedure;
using OSGeo.MapGuide.ObjectModels;
+using OSGeo.MapGuide.MaestroAPI.Services;
+using System.IO;
namespace MaestroAPITests
{
@@ -52,7 +54,7 @@
_mocks = new Mockery();
var conn = _mocks.NewMock<IServerConnection>();
- var app = ObjectFactory.CreateFlexibleLayout(conn);
+ var app = ObjectFactory.DeserializeEmbeddedFlexLayout();
var app2 = app.Clone();
Assert.AreNotSame(app, app2);
@@ -93,6 +95,7 @@
public void TestValidResourceIdentifiers()
{
var conn = _mocks.NewMock<IServerConnection>();
+
//Verify that only valid resource identifiers can be assigned to certain resource types.
IResource res = ObjectFactory.CreateFeatureSource(conn, "OSGeo.SDF");
@@ -227,7 +230,7 @@
}
#endregion
- res = ObjectFactory.CreateFlexibleLayout(conn);
+ res = ObjectFactory.DeserializeEmbeddedFlexLayout();
#region Application Definition
try
{
@@ -436,7 +439,7 @@
var conv = new ResourceConverter(new List<IResourceConverter>());
var targetVer = new Version(1, 0, 0);
- var app = ObjectFactory.CreateFlexibleLayout(conn);
+ var app = ObjectFactory.DeserializeEmbeddedFlexLayout();
var app2 = conv.Upgrade(app, targetVer);
Assert.AreSame(app, app2);
Modified: sandbox/maestro-3.0/MaestroAPITests/RuntimeMapTests.cs
===================================================================
--- sandbox/maestro-3.0/MaestroAPITests/RuntimeMapTests.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/MaestroAPITests/RuntimeMapTests.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -45,59 +45,66 @@
[SetUpFixture]
public class TestBootstrap
{
+ //Guard variable to prevent duplicate registration on repeated test runs of a single test session
+ static bool _registered = false;
+
[SetUp]
public void Setup()
{
- //Layer Definition 1.1.0
- ResourceValidatorSet.RegisterValidator(new Ldf110.LayerDefinitionValidator());
- ResourceTypeRegistry.RegisterResource(
- new ResourceTypeDescriptor(ResourceTypes.LayerDefinition, "1.1.0"),
- new ResourceSerializationCallback(Ldf110.LdfEntryPoint.Serialize),
- new ResourceDeserializationCallback(Ldf110.LdfEntryPoint.Deserialize));
- ObjectFactory.RegisterLayerFactoryMethod(new Version(1, 1, 0), new LayerCreatorFunc(Ldf110.LdfEntryPoint.CreateDefault));
+ if (!_registered)
+ {
+ //Layer Definition 1.1.0
+ ResourceValidatorSet.RegisterValidator(new Ldf110.LayerDefinitionValidator());
+ ResourceTypeRegistry.RegisterResource(
+ new ResourceTypeDescriptor(ResourceTypes.LayerDefinition, "1.1.0"),
+ new ResourceSerializationCallback(Ldf110.LdfEntryPoint.Serialize),
+ new ResourceDeserializationCallback(Ldf110.LdfEntryPoint.Deserialize));
+ ObjectFactory.RegisterLayerFactoryMethod(new Version(1, 1, 0), new LayerCreatorFunc(Ldf110.LdfEntryPoint.CreateDefault));
- //Layer Definition 1.2.0
- ResourceValidatorSet.RegisterValidator(new Ldf120.LayerDefinitionValidator());
- ResourceTypeRegistry.RegisterResource(
- new ResourceTypeDescriptor(ResourceTypes.LayerDefinition, "1.2.0"),
- new ResourceSerializationCallback(Ldf120.LdfEntryPoint.Serialize),
- new ResourceDeserializationCallback(Ldf120.LdfEntryPoint.Deserialize));
- ObjectFactory.RegisterLayerFactoryMethod(new Version(1, 2, 0), new LayerCreatorFunc(Ldf120.LdfEntryPoint.CreateDefault));
+ //Layer Definition 1.2.0
+ ResourceValidatorSet.RegisterValidator(new Ldf120.LayerDefinitionValidator());
+ ResourceTypeRegistry.RegisterResource(
+ new ResourceTypeDescriptor(ResourceTypes.LayerDefinition, "1.2.0"),
+ new ResourceSerializationCallback(Ldf120.LdfEntryPoint.Serialize),
+ new ResourceDeserializationCallback(Ldf120.LdfEntryPoint.Deserialize));
+ ObjectFactory.RegisterLayerFactoryMethod(new Version(1, 2, 0), new LayerCreatorFunc(Ldf120.LdfEntryPoint.CreateDefault));
- //Layer Definition 1.3.0
- ResourceValidatorSet.RegisterValidator(new Ldf130.LayerDefinitionValidator());
- ResourceTypeRegistry.RegisterResource(
- new ResourceTypeDescriptor(ResourceTypes.LayerDefinition, "1.3.0"),
- new ResourceSerializationCallback(Ldf130.LdfEntryPoint.Serialize),
- new ResourceDeserializationCallback(Ldf130.LdfEntryPoint.Deserialize));
- ObjectFactory.RegisterLayerFactoryMethod(new Version(1, 3, 0), new LayerCreatorFunc(Ldf130.LdfEntryPoint.CreateDefault));
+ //Layer Definition 1.3.0
+ ResourceValidatorSet.RegisterValidator(new Ldf130.LayerDefinitionValidator());
+ ResourceTypeRegistry.RegisterResource(
+ new ResourceTypeDescriptor(ResourceTypes.LayerDefinition, "1.3.0"),
+ new ResourceSerializationCallback(Ldf130.LdfEntryPoint.Serialize),
+ new ResourceDeserializationCallback(Ldf130.LdfEntryPoint.Deserialize));
+ ObjectFactory.RegisterLayerFactoryMethod(new Version(1, 3, 0), new LayerCreatorFunc(Ldf130.LdfEntryPoint.CreateDefault));
- //Load Procedure 1.1.0
- ResourceValidatorSet.RegisterValidator(new Lp110.LoadProcedureValidator());
- ResourceTypeRegistry.RegisterResource(
- new ResourceTypeDescriptor(ResourceTypes.LoadProcedure, "1.1.0"),
- new ResourceSerializationCallback(Lp110.LoadProcEntryPoint.Serialize),
- new ResourceDeserializationCallback(Lp110.LoadProcEntryPoint.Deserialize));
+ //Load Procedure 1.1.0
+ ResourceValidatorSet.RegisterValidator(new Lp110.LoadProcedureValidator());
+ ResourceTypeRegistry.RegisterResource(
+ new ResourceTypeDescriptor(ResourceTypes.LoadProcedure, "1.1.0"),
+ new ResourceSerializationCallback(Lp110.LoadProcEntryPoint.Serialize),
+ new ResourceDeserializationCallback(Lp110.LoadProcEntryPoint.Deserialize));
- //Load Procedure 1.1.0 schema offers nothing new for the ones we want to support, so nothing to register
- //with the ObjectFactory
+ //Load Procedure 1.1.0 schema offers nothing new for the ones we want to support, so nothing to register
+ //with the ObjectFactory
- //Load Procedure 2.2.0
- ResourceValidatorSet.RegisterValidator(new Lp220.LoadProcedureValidator());
- ResourceTypeRegistry.RegisterResource(
- new ResourceTypeDescriptor(ResourceTypes.LoadProcedure, "2.2.0"),
- new ResourceSerializationCallback(Lp220.LoadProcEntryPoint.Serialize),
- new ResourceDeserializationCallback(Lp220.LoadProcEntryPoint.Deserialize));
- ObjectFactory.RegisterLoadProcedureFactoryMethod(LoadType.Sqlite, new LoadProcCreatorFunc(Lp220.LoadProcEntryPoint.CreateDefaultSqlite));
+ //Load Procedure 2.2.0
+ ResourceValidatorSet.RegisterValidator(new Lp220.LoadProcedureValidator());
+ ResourceTypeRegistry.RegisterResource(
+ new ResourceTypeDescriptor(ResourceTypes.LoadProcedure, "2.2.0"),
+ new ResourceSerializationCallback(Lp220.LoadProcEntryPoint.Serialize),
+ new ResourceDeserializationCallback(Lp220.LoadProcEntryPoint.Deserialize));
+ ObjectFactory.RegisterLoadProcedureFactoryMethod(LoadType.Sqlite, new LoadProcCreatorFunc(Lp220.LoadProcEntryPoint.CreateDefaultSqlite));
- //Web Layout 1.1.0
- ResourceValidatorSet.RegisterValidator(new WL110.WebLayoutValidator());
- ResourceTypeRegistry.RegisterResource(
- new ResourceTypeDescriptor(ResourceTypes.WebLayout, "1.1.0"),
- new ResourceSerializationCallback(WL110.WebLayoutEntryPoint.Serialize),
- new ResourceDeserializationCallback(WL110.WebLayoutEntryPoint.Deserialize));
- ObjectFactory.RegisterWebLayoutFactoryMethod(new Version(1, 1, 0), new WebLayoutCreatorFunc(WL110.WebLayoutEntryPoint.CreateDefault));
+ //Web Layout 1.1.0
+ ResourceValidatorSet.RegisterValidator(new WL110.WebLayoutValidator());
+ ResourceTypeRegistry.RegisterResource(
+ new ResourceTypeDescriptor(ResourceTypes.WebLayout, "1.1.0"),
+ new ResourceSerializationCallback(WL110.WebLayoutEntryPoint.Serialize),
+ new ResourceDeserializationCallback(WL110.WebLayoutEntryPoint.Deserialize));
+ ObjectFactory.RegisterWebLayoutFactoryMethod(new Version(1, 1, 0), new WebLayoutCreatorFunc(WL110.WebLayoutEntryPoint.CreateDefault));
+ _registered = true;
+ }
}
[TearDown]
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj 2010-11-21 21:03:39 UTC (rev 5396)
@@ -412,6 +412,7 @@
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="ObjectModels\readme.txt" />
+ <None Include="Resources\BaseTemplate.ApplicationDefinition.xml" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Properties\Resources.resx">
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinition.cs
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinition.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinition.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -25,6 +25,7 @@
using OSGeo.MapGuide.MaestroAPI;
using OSGeo.MapGuide.MaestroAPI.Resource;
using OSGeo.MapGuide.ObjectModels.ApplicationDefinition;
+using System.Collections.Specialized;
#pragma warning disable 1591, 0114, 0108
@@ -51,6 +52,48 @@
private static readonly Version RES_VERSION = new Version(1, 0, 0);
+ public string[] GetAllReferenceableWidgetNames()
+ {
+ List<string> names = new List<string>();
+
+ foreach (var ws in this.WidgetSets)
+ {
+ foreach (var cnt in ws.Containers)
+ {
+
+ }
+ }
+
+ return names.ToArray();
+ }
+
+ public IMapWidget CreateMapWidget(string mapId, string contextMenuId)
+ {
+ var map = new MapWidgetType()
+ {
+ MapId = mapId,
+ Name = "Map",
+ Type = "Map",
+ Extension = new CustomContentType() { Any = new XmlElement[0] }
+ };
+ map.SetValue("MenuContainer", contextMenuId);
+ return map;
+ }
+
+ public IWidgetItem CreateWidgetReference(string name) { return new WidgetItemType() { Function = UiItemFunctionType.Widget, Widget = name }; }
+
+ public ISeparator CreateSeparator() { return new SeparatorItemType() { Function = UiItemFunctionType.Separator }; }
+
+ public IFlyoutItem CreateFlyout(string label)
+ {
+ return new FlyoutItemType()
+ {
+ Function = UiItemFunctionType.Flyout,
+ Label = label,
+ Item = new System.ComponentModel.BindingList<UiItemType>()
+ };
+ }
+
public IMapGroup AddMapGroup(string id, bool singleTile, string mapDefinitionId)
{
var map = new MapGroupType()
@@ -155,19 +198,20 @@
{
var wparams = widgetInfo.Parameters;
- WidgetType widget = null;
+ IWidget widget = null;
if (widgetInfo.StandardUi)
{
widget = new UiWidgetType()
{
- Extension = new CustomContentType(),
+ Disabled = "false",
+ Extension = new CustomContentType() { Any = new XmlElement[0] },
ImageClass = widgetInfo.ImageClass,
ImageUrl = widgetInfo.ImageUrl,
Label = widgetInfo.Label,
- Location = widgetInfo.Location,
+ Location = widgetInfo.Location ?? string.Empty,
Name = name,
- StatusText = widgetInfo.StatusText,
+ StatusText = widgetInfo.StatusText ?? string.Empty,
Tooltip = widgetInfo.Tooltip,
Type = widgetInfo.Type
};
@@ -176,22 +220,29 @@
{
widget = new WidgetType()
{
- Extension = new CustomContentType(),
- Location = widgetInfo.Location,
+ Extension = new CustomContentType() { Any = new XmlElement[0] },
+ Location = widgetInfo.Location ?? string.Empty,
Name = name,
Type = widgetInfo.Type,
};
}
- widget.Extension.Any = new XmlElement[wparams.Length];
+ NameValueCollection extProperties = new NameValueCollection();
- /*
- for (int i = 0; i < wparams.Length; i++)
+ foreach (var wp in widgetInfo.Parameters)
{
- var el = CreateExtensionElement(wparams[i]);
- widget.Extension.InsertElementAt(i, el);
- }*/
+ if (!string.IsNullOrEmpty(wp.DefaultValue))
+ {
+ extProperties.Add(wp.Name, wp.DefaultValue);
+ }
+ else
+ {
+ extProperties.Add(wp.Name, string.Empty);
+ }
+ }
+ widget.SetAllValues(extProperties);
+
return widget;
}
@@ -202,9 +253,14 @@
return el;
}
- IWidgetContainer IApplicationDefinition.CreateContainer(string name, IApplicationDefinitionContainerInfo containerInfo)
+ IUIItemContainer IApplicationDefinition.CreateContainer(string name, IApplicationDefinitionContainerInfo containerInfo)
{
- return null;
+ return new UiItemContainerType()
+ {
+ Name = name,
+ Type = containerInfo.Type,
+ Item = new System.ComponentModel.BindingList<UiItemType>()
+ };
}
IMapSet IApplicationDefinition.MapSet
@@ -286,6 +342,16 @@
OnPropertyChanged("WidgetSet");
}
}
+
+ public IWidgetSet CreateWidgetSet(IMapWidget mapWidget)
+ {
+ return new WidgetSetType()
+ {
+ Widget = new System.ComponentModel.BindingList<WidgetType>(),
+ Container = new System.ComponentModel.BindingList<ContainerType>(),
+ MapWidget = (MapWidgetType)mapWidget
+ };
+ }
}
partial class UiItemContainerType : IUIItemContainer
@@ -346,6 +412,7 @@
if (it != null)
{
this.Item.Insert(index, it);
+ it.Parent = this;
OnPropertyChanged("Item");
}
}
@@ -356,6 +423,7 @@
if (it != null)
{
this.Item.Add(it);
+ it.Parent = this;
OnPropertyChanged("Item");
}
}
@@ -366,6 +434,7 @@
if (it != null)
{
this.Item.Remove(it);
+ it.Parent = null;
OnPropertyChanged("Item");
}
}
@@ -429,6 +498,7 @@
if (it != null)
{
this.Item.Insert(index, it);
+ it.Parent = this;
OnPropertyChanged("Item");
}
}
@@ -439,6 +509,7 @@
if (it != null)
{
this.Item.Add(it);
+ it.Parent = this;
OnPropertyChanged("Item");
}
}
@@ -449,12 +520,17 @@
if (it != null)
{
this.Item.Remove(it);
+ it.Parent = null;
OnPropertyChanged("Item");
}
}
}
- partial class UiItemType : IUIItem { }
+ partial class UiItemType : IUIItem
+ {
+ [XmlIgnore]
+ public IMenu Parent { get; set; }
+ }
partial class WidgetItemType : IWidgetItem { }
@@ -505,6 +581,41 @@
return this.MapWidget;
}
}
+
+
+ public int WidgetCount
+ {
+ get { return this.Widget.Count; }
+ }
+
+ public IEnumerable<IWidget> Widgets
+ {
+ get
+ {
+ foreach (var wgt in this.Widget)
+ {
+ yield return wgt;
+ }
+ }
+ }
+
+ public void AddWidget(IWidget widget)
+ {
+ var wgt = widget as WidgetType;
+ if (wgt != null)
+ {
+ this.Widget.Add(wgt);
+ }
+ }
+
+ public void RemoveWidget(IWidget widget)
+ {
+ var wgt = widget as WidgetType;
+ if (wgt != null)
+ {
+ this.Widget.Remove(wgt);
+ }
+ }
}
partial class ContainerType : IWidgetContainer
@@ -531,6 +642,8 @@
}
}
+ partial class UiWidgetType : IUIWidget { }
+
partial class MapWidgetType : IMapWidget { }
partial class MapViewType : IMapView { }
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInfo.cs
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInfo.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInfo.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -27,9 +27,11 @@
namespace OSGeo.MapGuide.ObjectModels.ApplicationDefinition_1_0_0
{
using OSGeo.MapGuide.MaestroAPI;
+ using System.Xml.Serialization;
partial class ApplicationDefinitionWidgetInfoSet : IApplicationDefinitionWidgetInfoSet
{
+ [XmlIgnore]
IEnumerable<IWidgetInfo> IApplicationDefinitionWidgetInfoSet.WidgetInfo
{
get
@@ -44,6 +46,7 @@
partial class ApplicationDefinitionContainerInfoSet : IApplicationDefinitionContainerInfoSet
{
+ [XmlIgnore]
IEnumerable<IApplicationDefinitionContainerInfo> IApplicationDefinitionContainerInfoSet.ContainerInfo
{
get
@@ -58,6 +61,7 @@
partial class ApplicationDefinitionTemplateInfoSet : IApplicationDefinitionTemplateInfoSet
{
+ [XmlIgnore]
IEnumerable<IApplicationDefinitionTemplateInfo> IApplicationDefinitionTemplateInfoSet.TemplateInfo
{
get
@@ -77,6 +81,7 @@
partial class ApplicationDefinitionTemplateInfoType : IApplicationDefinitionTemplateInfo
{
+ [XmlIgnore]
IEnumerable<IApplicationDefinitionPanel> IApplicationDefinitionTemplateInfo.Panels
{
get
@@ -101,11 +106,13 @@
partial class ApplicationDefinitionWidgetInfoType : IWidgetInfo
{
+ [XmlIgnore]
string[] IWidgetInfo.ContainableBy
{
get { return this.ContainableBy.ToArray(); }
}
+ [XmlIgnore]
public IWidgetParameter[] Parameters
{
get
@@ -122,6 +129,7 @@
partial class ApplicationDefinitionWidgetParameterType : IWidgetParameter
{
+ [XmlIgnore]
IAllowedValue[] IWidgetParameter.AllowedValue
{
get
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInterfaces.cs
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInterfaces.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ApplicationDefinitionInterfaces.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -24,6 +24,7 @@
using System.Xml;
using OSGeo.MapGuide.MaestroAPI.Resource;
using OSGeo.MapGuide.MaestroAPI;
+using System.Collections.Specialized;
namespace OSGeo.MapGuide.ObjectModels.ApplicationDefinition
{
@@ -202,6 +203,112 @@
}
/// <summary>
+ /// A set of known widgets that come with a fusion installation
+ /// </summary>
+ public static class KnownWidgetNames
+ {
+ public const string About = "About";
+
+ public const string ActivityIndicator = "ActivityIndicator";
+
+ public const string BasemapSwitcher = "BasemapSwitcher";
+
+ public const string Buffer = "Buffer";
+
+ public const string BufferPanel = "BufferPanel";
+
+ public const string CenterSelection = "CenterSelection";
+
+ public const string ClearSelection = "ClearSelection";
+
+ public const string ColorPicker = "ColorPicker";
+
+ public const string CTRLClick = "CTRLClick";
+
+ public const string CursorPosition = "CursorPosition";
+
+ public const string EditableScale = "EditableScale";
+
+ public const string ExtentHistory = "ExtentHistory";
+
+ public const string FeatureInfo = "FeatureInfo";
+
+ public const string Help = "Help";
+
+ public const string InitialMapView = "InitialMapView";
+
+ public const string InvokeScript = "InvokeScript";
+
+ public const string InvokeURL = "InvokeURL";
+
+ public const string LayerManager = "LayerManager";
+
+ public const string Legend = "Legend";
+
+ public const string LinkToView = "LinkToView";
+
+ public const string MapMenu = "MapMenu";
+
+ public const string Maptip = "Maptip";
+
+ public const string Measure = "Measure";
+
+ public const string Navigator = "Navigator";
+
+ public const string OverviewMap = "OverviewMap";
+
+ public const string Pan = "Pan";
+
+ public const string PanOnClick = "PanOnClick";
+
+ public const string PanQuery = "PanQuery";
+
+ public const string Print = "Print";
+
+ public const string Query = "Query";
+
+ public const string QuickPlot = "QuickPlot";
+
+ public const string Redline = "Redline";
+
+ public const string RefreshMap = "RefreshMap";
+
+ public const string SaveMap = "SaveMap";
+
+ public const string Scalebar = "Scalebar";
+
+ public const string ScalebarDual = "ScalebarDual";
+
+ public const string Search = "Search";
+
+ public const string Select = "Select";
+
+ public const string SelectionInfo = "SelectionInfo";
+
+ public const string SelectPolygon = "SelectPolygon";
+
+ public const string SelectRadius = "SelectRadius";
+
+ public const string SelectRadiusValue = "SelectRadiusValue";
+
+ public const string SelectWithin = "SelectWithin";
+
+ public const string TaskPane = "TaskPane";
+
+ public const string Theme = "Theme";
+
+ public const string ViewOptions = "ViewOptions";
+
+ public const string ViewSize = "ViewSize";
+
+ public const string Zoom = "Zoom";
+
+ public const string ZoomOnClick = "ZoomOnClick";
+
+ public const string ZoomToSelection = "ZoomToSelection";
+ }
+
+ /// <summary>
/// Represents a fusion flexible layout (aka. An Application Definition document)
/// </summary>
public interface IApplicationDefinition : IResource, IExtensibleElement
@@ -226,10 +333,18 @@
/// </summary>
IEnumerable<IWidgetSet> WidgetSets { get; }
+ IWidgetSet CreateWidgetSet(IMapWidget mapWidget);
+
void AddWidgetSet(IWidgetSet set);
void RemoveWidgetSet(IWidgetSet set);
+ IWidgetItem CreateWidgetReference(string name);
+
+ ISeparator CreateSeparator();
+
+ IFlyoutItem CreateFlyout(string label);
+
/// <summary>
/// Adds the new map group to the current map set
/// </summary>
@@ -253,7 +368,15 @@
IWidget CreateWidget(string name, IWidgetInfo widgetInfo);
- IWidgetContainer CreateContainer(string name, IApplicationDefinitionContainerInfo containerInfo);
+ IUIItemContainer CreateContainer(string name, IApplicationDefinitionContainerInfo containerInfo);
+
+ /// <summary>
+ /// Gets an array of the names of widgets that can be referenced from a toolbar or menu
+ /// </summary>
+ /// <returns></returns>
+ string[] GetAllReferenceableWidgetNames();
+
+ IMapWidget CreateMapWidget(string mapId, string contextMenuId);
}
public interface IExtensibleElement
@@ -299,6 +422,63 @@
public static class ExtensionMethods
{
/// <summary>
+ /// Gets a specific container info by type
+ /// </summary>
+ /// <param name="set"></param>
+ /// <param name="name"></param>
+ /// <returns></returns>
+ public static IApplicationDefinitionContainerInfo FindContainer(this IApplicationDefinitionContainerInfoSet set, string name)
+ {
+ Check.NotNull(set, "set");
+ Check.NotEmpty(name, "name");
+
+ foreach (var cnt in set.ContainerInfo)
+ {
+ if (name.Equals(cnt.Type))
+ return cnt;
+ }
+ return null;
+ }
+
+ /// <summary>
+ /// Gets a specific Widget Info by name
+ /// </summary>
+ /// <param name="set"></param>
+ /// <param name="name"></param>
+ /// <returns></returns>
+ public static IWidgetInfo FindWidget(this IApplicationDefinitionWidgetInfoSet set, string name)
+ {
+ Check.NotNull(set, "set");
+ Check.NotEmpty(name, "name");
+
+ foreach (var wgt in set.WidgetInfo)
+ {
+ if (name.Equals(wgt.Type))
+ return wgt;
+ }
+ return null;
+ }
+
+ /// <summary>
+ /// Gets information for the named template
+ /// </summary>
+ /// <param name="set"></param>
+ /// <param name="name"></param>
+ /// <returns></returns>
+ public static IApplicationDefinitionTemplateInfo FindTemplate(this IApplicationDefinitionTemplateInfoSet set, string name)
+ {
+ Check.NotNull(set, "set");
+ Check.NotEmpty(name, "name");
+
+ foreach (var tpl in set.TemplateInfo)
+ {
+ if (name.Equals(tpl.Name))
+ return tpl;
+ }
+ return null;
+ }
+
+ /// <summary>
/// Gets the specified map group by its id
/// </summary>
/// <param name="set"></param>
@@ -335,6 +515,43 @@
}
/// <summary>
+ /// Gets all the properties in this extensible element
+ /// </summary>
+ /// <param name="ext"></param>
+ /// <returns></returns>
+ public static NameValueCollection GetAllValues(this IExtensibleElement ext)
+ {
+ Check.NotNull(ext, "ext");
+ NameValueCollection values = new NameValueCollection();
+ foreach (var el in ext.Extension.Content)
+ {
+ values.Add(el.Name, el.InnerText);
+ }
+ return values;
+ }
+
+ /// <summary>
+ /// Replace the values of all properties in this extensible element with the values provided
+ /// </summary>
+ /// <param name="ext"></param>
+ /// <param name="values"></param>
+ public static void SetAllValues(this IExtensibleElement ext, NameValueCollection values)
+ {
+ Check.NotNull(ext, "ext");
+ Check.NotNull(values, "values");
+
+ var elements = new List<XmlElement>();
+ foreach (string name in values.Keys)
+ {
+ var value = values[name];
+ var rid = AppDefDocument.Instance.CreateElement(name);
+ rid.InnerText = value;
+ elements.Add(rid);
+ }
+ ext.Extension.Content = elements.ToArray();
+ }
+
+ /// <summary>
/// Sets the value of a property in this extensible element.
/// </summary>
/// <param name="ext"></param>
@@ -610,6 +827,14 @@
void RemoveContainer(IWidgetContainer container);
IMapWidget MapWidget { get; }
+
+ int WidgetCount { get; }
+
+ IEnumerable<IWidget> Widgets { get; }
+
+ void AddWidget(IWidget widget);
+
+ void RemoveWidget(IWidget widget);
}
/// <summary>
@@ -708,6 +933,8 @@
public interface IUIItem
{
+ IMenu Parent { get; }
+
UiItemFunctionType Function { get; }
}
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ObjectFactory.cs
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ObjectFactory.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/ObjectModels/ObjectFactory.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -24,6 +24,7 @@
using OSGeo.MapGuide.MaestroAPI;
using OSGeo.MapGuide.MaestroAPI.Resource;
using OSGeo.MapGuide.MaestroAPI.Services;
+using Res = OSGeo.MapGuide.MaestroAPI.Properties.Resources;
using OSGeo.MapGuide.ObjectModels.ApplicationDefinition;
using OSGeo.MapGuide.ObjectModels.Common;
using OSGeo.MapGuide.ObjectModels.DrawingSource;
@@ -36,6 +37,7 @@
using OSGeo.MapGuide.ObjectModels.SymbolLibrary;
using OSGeo.MapGuide.ObjectModels.WebLayout;
using OSGeo.MapGuide.ObjectModels.ApplicationDefinition_1_0_0;
+using System.Collections.Specialized;
namespace OSGeo.MapGuide.ObjectModels
{
@@ -304,40 +306,326 @@
return new CompoundSymbolDefinition() { CurrentConnection = owner };
}
- //TODO: Just deserialize from an embedded resource. The content model for a fusion
- //flexible layout is just too loose to programmatically build reliably.
+ static readonly string[] parameterizedWidgets =
+ {
+ KnownWidgetNames.ZoomOnClick,
+ KnownWidgetNames.ExtentHistory,
+ KnownWidgetNames.BufferPanel,
+ KnownWidgetNames.Measure,
+ KnownWidgetNames.InvokeScript,
+ KnownWidgetNames.InvokeURL,
+ KnownWidgetNames.Search,
+ KnownWidgetNames.CursorPosition,
+ KnownWidgetNames.SelectionInfo,
+ KnownWidgetNames.ViewSize
+ };
+
/// <summary>
- /// Creates the flexible layout.
+ /// Creates a fusion flexible layout
/// </summary>
- /// <param name="owner">The owner.</param>
+ /// <param name="owner"></param>
+ /// <param name="templateName">The name of the template. See <see cref="FusionTemplateNames"/> for the common pre-defined names</param>
/// <returns></returns>
- public static IApplicationDefinition CreateFlexibleLayout(IServerConnection owner)
+ public static IApplicationDefinition CreateFlexibleLayout(IServerConnection owner, string templateName)
{
Check.NotNull(owner, "owner");
-
- return new ApplicationDefinitionType()
+ Check.Precondition(Array.IndexOf(owner.Capabilities.SupportedServices, (int)ServiceType.Fusion) >= 0, "Required Fusion service not supported on this connection");
+
+ IApplicationDefinition appDef = new ApplicationDefinitionType()
{
CurrentConnection = owner,
MapSet = new System.ComponentModel.BindingList<MapGroupType>(),
WidgetSet = new System.ComponentModel.BindingList<WidgetSetType>()
};
- }
- /// <summary>
- /// Creates the flexible layout.
- /// </summary>
- /// <param name="owner">The owner.</param>
- /// <param name="title">The title.</param>
- /// <returns></returns>
- public static IApplicationDefinition CreateFlexibleLayout(IServerConnection owner, string title)
- {
- Check.NotNull(owner, "owner");
+ var fusionSvc = (IFusionService)owner.GetService((int)ServiceType.Fusion);
+ var templates = fusionSvc.GetApplicationTemplates();
+ var widgets = fusionSvc.GetApplicationWidgets();
+ var containers = fusionSvc.GetApplicationContainers();
- var appDef = CreateFlexibleLayout(owner);
- appDef.Title = title;
+ //Find matching template
+ var tpl = templates.FindTemplate(templateName);
+ if (tpl != null)
+ {
+ appDef.TemplateUrl = tpl.LocationUrl;
+ appDef.Title = tpl.Name;
+ }
+ else
+ {
+ return DeserializeEmbeddedFlexLayout();
+ }
+
+ //Toolbars, every template has them
+ var toolbar = appDef.CreateContainer("Toolbar", containers.FindContainer("Toolbar"));
+ var secToolbar = appDef.CreateContainer("ToolbarSecondary", containers.FindContainer("Toolbar"));
+
+ //Context menus, every template has them
+ var mapContextMenu = appDef.CreateContainer("MapContextMenu", containers.FindContainer("ContextMenu"));
+ var taskPaneMenu = appDef.CreateContainer("TaskContextMenu", containers.FindContainer("ContextMenu"));
+
+ //Menu
+ var menu = appDef.CreateContainer("FileMenu", containers.FindContainer("Toolbar"));
+
+ //Status bar
+ var statusbar = appDef.CreateContainer("Statusbar", containers.FindContainer("Splitterbar"));
+
+ string mapId = "MainMap";
+ //Set default map group
+ appDef.AddMapGroup(mapId, true, string.Empty);
+
+ //Create default widget set
+ var widgetSet = appDef.CreateWidgetSet(appDef.CreateMapWidget(mapId, mapContextMenu.Name));
+ appDef.AddWidgetSet(widgetSet);
+
+ //Add all known non-parameterized widgets to this widget set
+ foreach (var wgt in widgets.WidgetInfo)
+ {
+ if (Array.IndexOf(parameterizedWidgets, wgt.Type) < 0)
+ {
+ var widget = appDef.CreateWidget(wgt.Type, wgt);
+ widgetSet.AddWidget(widget);
+ }
+ }
+
+ //Add some parameterized ones
+
+ //Zoom In
+ var zoomIn = (IUIWidget)appDef.CreateWidget("ZoomIn", widgets.FindWidget(KnownWidgetNames.ZoomOnClick));
+ zoomIn.SetValue("Factor", "2");
+ zoomIn.StatusText = zoomIn.Tooltip = Res.ADF_Widget_ZoomIn_Desc;
+ zoomIn.Label = Res.ADF_Widget_ZoomIn_Label;
+
+ //Zoom Out
+ var zoomOut = (IUIWidget)appDef.CreateWidget("ZoomOut", widgets.FindWidget(KnownWidgetNames.ZoomOnClick));
+ zoomOut.SetValue("Factor", "0.5");
+ zoomOut.StatusText = zoomOut.Tooltip = Res.ADF_Widget_ZoomOut_Desc;
+ zoomOut.Label = Res.ADF_Widget_ZoomOut_Label;
+
+ //Previous View
+ var prevView = (IUIWidget)appDef.CreateWidget("PreviousView", widgets.FindWidget(KnownWidgetNames.ExtentHistory));
+ prevView.SetValue("Direction", "previous");
+ prevView.StatusText = prevView.Tooltip = Res.ADF_Widget_PreviousView_Desc;
+ prevView.Label = Res.ADF_Widget_PreviousView_Label;
+
+ //Next View
+ var nextView = (IUIWidget)appDef.CreateWidget("NextView", widgets.FindWidget(KnownWidgetNames.ExtentHistory));
+ nextView.SetValue("Direction", "next");
+ nextView.StatusText = nextView.Tooltip = Res.ADF_Widget_NextView_Desc;
+ nextView.Label = Res.ADF_Widget_NextView_Label;
+
+ //Buffer
+ var buffer = (IUIWidget)appDef.CreateWidget("tbBuffer", widgets.FindWidget(KnownWidgetNames.BufferPanel));
+ //buffer.SetValue("Target", "TaskPane");
+ buffer.StatusText = buffer.Tooltip = Res.ADF_Widget_Buffer_Desc;
+ buffer.Tooltip = Res.ADF_Widget_Buffer_Label;
+
+ //Measure
+ var measure = (IUIWidget)appDef.CreateWidget("tbBuffer", widgets.FindWidget(KnownWidgetNames.Measure));
+ var measureParams = new NameValueCollection();
+ measureParams["Type"] = "both";
+ measureParams["MeasureTooltipContainer"] = "MeasureResult";
+ measureParams["MeasureTooltipType"] = "dynamic";
+ measureParams["DistancePrecision"] = "0";
+ measureParams["AreaPrecision"] = "0";
+ measureParams["Units"] = "meters";
+ measureParams["Target"] = "TaskPane";
+ measure.SetAllValues(measureParams);
+ measure.StatusText = buffer.Tooltip = Res.ADF_Widget_Measure_Desc;
+ measure.Tooltip = Res.ADF_Widget_Measure_Label;
+
+ //Show Overview
+ var showOverview = (IUIWidget)appDef.CreateWidget("showOverview", widgets.FindWidget(KnownWidgetNames.InvokeScript));
+ showOverview.SetValue("Script", "showOverviewMap()");
+
+ //Show Task Pane
+ var showTaskPane = (IUIWidget)appDef.CreateWidget("showTaskPane", widgets.FindWidget(KnownWidgetNames.InvokeScript));
+ showTaskPane.SetValue("Script", "showTaskPane()");
+
+ //Show Legend
+ var showLegend = (IUIWidget)appDef.CreateWidget("showLegend", widgets.FindWidget(KnownWidgetNames.InvokeScript));
+ showLegend.SetValue("Script", "showLegend()");
+
+ //Show Selection Panel
+ var showSelectionPanel = (IUIWidget)appDef.CreateWidget("showSelectionPanel", widgets.FindWidget(KnownWidgetNames.InvokeScript));
+ showSelectionPanel.SetValue("Script", "showSelectionPanel()");
+
+ //Coordinate Tracker
+ var coordTracker = appDef.CreateWidget("statusCoordinates", widgets.FindWidget(KnownWidgetNames.CursorPosition));
+ coordTracker.SetValue("Template", "X: {x} {units}, Y: {y} {units}");
+ coordTracker.SetValue("Precision", "4");
+ coordTracker.SetValue("EmptyText", "&nbsp;");
+
+ //Selection Info
+ var selInfo = appDef.CreateWidget("statusSelection", widgets.FindWidget(KnownWidgetNames.SelectionInfo));
+ selInfo.SetValue("EmptyText", "No selection");
+
+ //View Size
+ var viewSize = appDef.CreateWidget("statusViewSize", widgets.FindWidget(KnownWidgetNames.ViewSize));
+ viewSize.SetValue("Template", "{w} x {h} ({units})");
+ viewSize.SetValue("Precision", "2");
+
+ widgetSet.AddWidget(zoomIn);
+ widgetSet.AddWidget(zoomOut);
+ widgetSet.AddWidget(prevView);
+ widgetSet.AddWidget(nextView);
+ widgetSet.AddWidget(buffer);
+ widgetSet.AddWidget(showOverview);
+ widgetSet.AddWidget(showTaskPane);
+ widgetSet.AddWidget(showLegend);
+ widgetSet.AddWidget(showSelectionPanel);
+ widgetSet.AddWidget(coordTracker);
+ widgetSet.AddWidget(selInfo);
+ widgetSet.AddWidget(viewSize);
+
+ //Now here's where things may diverge completely between templates
+ //So let's try for something that is somewhat consistent
+
+ //Init primary toolbar
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Print));
+
+ //2.2 specific stuff
+ if (owner.SiteVersion >= new Version(2, 2))
+ {
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.QuickPlot));
+ }
+
+ toolbar.AddItem(appDef.CreateSeparator());
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.RefreshMap));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.SelectRadius));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.SelectPolygon));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.ClearSelection));
+
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Buffer));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Measure));
+
+ //2.2 specific stuff
+ if (owner.SiteVersion >= new Version(2, 2))
+ {
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.FeatureInfo));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Query));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Theme));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Redline));
+ }
+
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.ViewOptions));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.About));
+ toolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Help));
+
+ //Init secondary toolbar
+ secToolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Select));
+ secToolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Pan));
+ secToolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Zoom));
+ secToolbar.AddItem(appDef.CreateWidgetReference(zoomIn.Name));
+ secToolbar.AddItem(appDef.CreateWidgetReference(zoomOut.Name));
+ secToolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.InitialMapView));
+ secToolbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.ZoomToSelection));
+ secToolbar.AddItem(appDef.CreateWidgetReference(prevView.Name));
+ secToolbar.AddItem(appDef.CreateWidgetReference(nextView.Name));
+
+ //Main menu
+ menu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.MapMenu));
+
+ //2.2 specific stuff
+ if (owner.SiteVersion >= new Version(2, 2))
+ {
+ menu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.BasemapSwitcher));
+ }
+ var viewMenu = appDef.CreateFlyout(Res.ADF_Flyout_View);
+ viewMenu.AddItem(appDef.CreateWidgetReference(showOverview.Name));
+ viewMenu.AddItem(appDef.CreateWidgetReference(showTaskPane.Name));
+ viewMenu.AddItem(appDef.CreateWidgetReference(showLegend.Name));
+ viewMenu.AddItem(appDef.CreateWidgetReference(showSelectionPanel.Name));
+ menu.AddItem(viewMenu);
+
+ //status bar
+ statusbar.AddItem(appDef.CreateWidgetReference(coordTracker.Name));
+ statusbar.AddItem(appDef.CreateWidgetReference(selInfo.Name));
+ statusbar.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.EditableScale));
+ statusbar.AddItem(appDef.CreateWidgetReference(viewSize.Name));
+
+ //Map Context Menu
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.RefreshMap));
+ mapContextMenu.AddItem(appDef.CreateSeparator());
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Pan));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Zoom));
+ mapContextMenu.AddItem(appDef.CreateSeparator());
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(zoomIn.Name));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(zoomOut.Name));
+ mapContextMenu.AddItem(appDef.CreateSeparator());
+ var zoomMenu = appDef.CreateFlyout(Res.ADF_Flyout_Zoom);
+
+ mapContextMenu.AddItem(zoomMenu);
+ mapContextMenu.AddItem(appDef.CreateSeparator());
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Select));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.ClearSelection));
+ var selectMoreMenu = appDef.CreateFlyout(Res.ADF_Flyout_SelectMore);
+
+ mapContextMenu.AddItem(selectMoreMenu);
+ mapContextMenu.AddItem(appDef.CreateSeparator());
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(buffer.Name));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(measure.Name));
+
+ if (owner.SiteVersion >= new Version(2, 2))
+ {
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.FeatureInfo));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Query));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Theme));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Redline));
+ }
+
+ mapContextMenu.AddItem(appDef.CreateSeparator());
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.ViewOptions));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Help));
+ mapContextMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.About));
+
+ //Tasks Context Menu
+ taskPaneMenu.AddItem(appDef.CreateWidgetReference(measure.Name));
+ taskPaneMenu.AddItem(appDef.CreateWidgetReference(buffer.Name));
+
+ if (owner.SiteVersion >= new Version(2, 2))
+ {
+ taskPaneMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.FeatureInfo));
+ taskPaneMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Query));
+ taskPaneMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Theme));
+ taskPaneMenu.AddItem(appDef.CreateWidgetReference(KnownWidgetNames.Redline));
+ }
+
+ //Now add them all to the main widget set
+ widgetSet.AddContainer(toolbar);
+ widgetSet.AddContainer(secToolbar);
+ widgetSet.AddContainer(menu);
+ widgetSet.AddContainer(statusbar);
+ widgetSet.AddContainer(mapContextMenu);
+ widgetSet.AddContainer(taskPaneMenu);
+
+ //Set positioning
+ toolbar.Position = "top";
+ secToolbar.Position = "top";
+ menu.Position = "top";
+ statusbar.Position = "bottom";
+ mapContextMenu.Position = "top";
+ taskPaneMenu.Position = "top";
+
+ //TODO: MGStudio actually creates a redundant secondary toolbar container. That way it can seamlessly
+ //switch between templates.
+
+ //Depending on some templates the secondary toolbar requires renaming
+ if (templateName.Equals(FusionTemplateNames.Aqua) ||
+ templateName.Equals(FusionTemplateNames.Maroon) ||
+ templateName.Equals(FusionTemplateNames.TurquoiseYellow))
+ {
+ secToolbar.Name = "ToolbarVertical";
+ secToolbar.Position = "left";
+ }
+
return appDef;
}
+ internal static IApplicationDefinition DeserializeEmbeddedFlexLayout()
+ {
+ return (IApplicationDefinition)ResourceTypeRegistry.Deserialize(OSGeo.MapGuide.MaestroAPI.Properties.Resources.BaseTemplate_ApplicationDefinition);
+ }
+
/// <summary>
/// Creates the preview flex layout.
/// </summary>
@@ -358,42 +646,6 @@
}
/// <summary>
- /// Creates a fusion flexible layout
- /// </summary>
- /// <param name="owner"></param>
- /// <param name="title"></param>
- /// <param name="templateName">The name of the template. Consult <see cref="FusionTemplateNames"/> for a list of stock templates</param>
- /// <returns></returns>
- public static IApplicationDefinition CreateFlexibleLayout(IServerConnection owner, string title, string templateName)
- {
- Check.NotNull(owner, "owner");
-
- string url = string.Empty;
-
- int[] services = owner.Capabilities.SupportedServices;
- if (Array.IndexOf(services, (int)ServiceType.Fusion) >= 0)
- {
- IFusionService fsvc = (IFusionService)owner.GetService((int)ServiceType.Fusion);
- var templates = fsvc.GetApplicationTemplates();
- foreach (var tpl in templates.TemplateInfo)
- {
- if (tpl.Name.ToUpper().Equals(templateName.ToUpper()))
- {
- url = tpl.LocationUrl;
- continue;
- }
- }
- }
-
- if (string.IsNullOrEmpty(url))
- throw new InvalidOperationException(OSGeo.MapGuide.MaestroAPI.Properties.Resources.TemplateUrlNotFound + templateName);
-
- var appDef = CreateFlexibleLayout(owner, title);
- appDef.TemplateUrl = url;
- return appDef;
- }
-
- /// <summary>
/// Creates the print layout.
/// </summary>
/// <param name="owner">The owner.</param>
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/PlatformConnectionBase.cs
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/PlatformConnectionBase.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/PlatformConnectionBase.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -32,6 +32,7 @@
using OSGeo.MapGuide.ObjectModels.MapDefinition;
using OSGeo.MapGuide.MaestroAPI.Serialization;
using OSGeo.MapGuide.ObjectModels.Common;
+using CS = Topology.CoordinateSystems;
namespace OSGeo.MapGuide.MaestroAPI
{
@@ -72,12 +73,11 @@
protected PlatformConnectionBase()
{
ResourceTypeRegistry.Init();
-
- m_serializers = new Hashtable();
- m_validator = new XMLValidator();
- m_cachedSchemas = new Hashtable();
-
- m_schemasPath = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), "Schemas");
+
+ m_serializers = new Hashtable();
+ m_validator = new XMLValidator();
+ m_cachedSchemas = new Hashtable();
+ m_schemasPath = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), "Schemas");
}
#region Serialization plumbing
@@ -1618,6 +1618,20 @@
#region runtime map
+ private static string ParseUnit(string wkt)
+ {
+ if (string.IsNullOrEmpty(wkt))
+ return null;
+
+ int index = wkt.IndexOf("UNIT[\"");
+ if (index >= 0)
+ {
+ int end = wkt.IndexOf("\"", index);
+ return wkt.Substring(index, end - index).ToUpper();
+ }
+ return null;
+ }
+
public virtual RuntimeMap CreateMap(string runtimeMapResourceId, string baseMapDefinitionId, double metersPerUnit)
{
var mdf = (IMapDefinition)GetResource(baseMapDefinitionId);
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.Designer.cs
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.Designer.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.Designer.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -61,6 +61,33 @@
}
/// <summary>
+ /// Looks up a localized string similar to Select More.
+ /// </summary>
+ internal static string ADF_Flyout_SelectMore {
+ get {
+ return ResourceManager.GetString("ADF_Flyout_SelectMore", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to View.
+ /// </summary>
+ internal static string ADF_Flyout_View {
+ get {
+ return ResourceManager.GetString("ADF_Flyout_View", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Zoom.
+ /// </summary>
+ internal static string ADF_Flyout_Zoom {
+ get {
+ return ResourceManager.GetString("ADF_Flyout_Zoom", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Map with ID {0} does not point to a valid map.
/// </summary>
internal static string ADF_MapInvalidError {
@@ -97,6 +124,133 @@
}
/// <summary>
+ /// Looks up a localized string similar to Create buffers around the selected features.
+ /// </summary>
+ internal static string ADF_Widget_Buffer_Desc {
+ get {
+ return ResourceManager.GetString("ADF_Widget_Buffer_Desc", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Buffer.
+ /// </summary>
+ internal static string ADF_Widget_Buffer_Label {
+ get {
+ return ResourceManager.GetString("ADF_Widget_Buffer_Label", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Measure distances and areas on the map.
+ /// </summary>
+ internal static string ADF_Widget_Measure_Desc {
+ get {
+ return ResourceManager.GetString("ADF_Widget_Measure_Desc", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Measure.
+ /// </summary>
+ internal static string ADF_Widget_Measure_Label {
+ get {
+ return ResourceManager.GetString("ADF_Widget_Measure_Label", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Go to next view.
+ /// </summary>
+ internal static string ADF_Widget_NextView_Desc {
+ get {
+ return ResourceManager.GetString("ADF_Widget_NextView_Desc", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Next.
+ /// </summary>
+ internal static string ADF_Widget_NextView_Label {
+ get {
+ return ResourceManager.GetString("ADF_Widget_NextView_Label", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Go to previous view.
+ /// </summary>
+ internal static string ADF_Widget_PreviousView_Desc {
+ get {
+ return ResourceManager.GetString("ADF_Widget_PreviousView_Desc", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Previous.
+ /// </summary>
+ internal static string ADF_Widget_PreviousView_Label {
+ get {
+ return ResourceManager.GetString("ADF_Widget_PreviousView_Label", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Zoom in by a preset increment.
+ /// </summary>
+ internal static string ADF_Widget_ZoomIn_Desc {
+ get {
+ return ResourceManager.GetString("ADF_Widget_ZoomIn_Desc", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Zoom In.
+ /// </summary>
+ internal static string ADF_Widget_ZoomIn_Label {
+ get {
+ return ResourceManager.GetString("ADF_Widget_ZoomIn_Label", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Zoom out by a preset increment.
+ /// </summary>
+ internal static string ADF_Widget_ZoomOut_Desc {
+ get {
+ return ResourceManager.GetString("ADF_Widget_ZoomOut_Desc", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Zoom Out.
+ /// </summary>
+ internal static string ADF_Widget_ZoomOut_Label {
+ get {
+ return ResourceManager.GetString("ADF_Widget_ZoomOut_Label", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to <?xml version="1.0"?>
+ ///<ApplicationDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="ApplicationDefinition-1.0.0.xsd">
+ /// <TemplateUrl>fusion/templates/mapguide/slate/index.html</TemplateUrl>
+ /// <MapSet>
+ /// <MapGroup id="MgMainMapId">
+ /// <Map>
+ /// <Type>MapGuide</Type>
+ /// <SingleTile>true</SingleTile>
+ /// <Extension>
+ /// <ResourceId />
+ /// <SelectionAsOverlay>true</SelectionAsOverla [rest of string was truncated]";.
+ /// </summary>
+ internal static string BaseTemplate_ApplicationDefinition {
+ get {
+ return ResourceManager.GetString("BaseTemplate_ApplicationDefinition", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Could not create load procedure of type: .
/// </summary>
internal static string CannotCreateLoadProcedureSubType {
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.resx
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.resx 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Properties/Resources.resx 2010-11-21 21:03:39 UTC (rev 5396)
@@ -433,4 +433,53 @@
<value>Layout specifies a start view that is outside the map's initial extents</value>
<comment>A warning message that is displayed if the layout specifies a start center point that is outside the map's specified extents</comment>
</data>
+ <data name="ADF_Flyout_SelectMore" xml:space="preserve">
+ <value>Select More</value>
+ </data>
+ <data name="ADF_Flyout_View" xml:space="preserve">
+ <value>View</value>
+ </data>
+ <data name="ADF_Flyout_Zoom" xml:space="preserve">
+ <value>Zoom</value>
+ </data>
+ <data name="ADF_Widget_Buffer_Desc" xml:space="preserve">
+ <value>Create buffers around the selected features</value>
+ </data>
+ <data name="ADF_Widget_Buffer_Label" xml:space="preserve">
+ <value>Buffer</value>
+ </data>
+ <data name="ADF_Widget_Measure_Desc" xml:space="preserve">
+ <value>Measure distances and areas on the map</value>
+ </data>
+ <data name="ADF_Widget_Measure_Label" xml:space="preserve">
+ <value>Measure</value>
+ </data>
+ <data name="ADF_Widget_NextView_Desc" xml:space="preserve">
+ <value>Go to next view</value>
+ </data>
+ <data name="ADF_Widget_NextView_Label" xml:space="preserve">
+ <value>Next</value>
+ </data>
+ <data name="ADF_Widget_PreviousView_Desc" xml:space="preserve">
+ <value>Go to previous view</value>
+ </data>
+ <data name="ADF_Widget_PreviousView_Label" xml:space="preserve">
+ <value>Previous</value>
+ </data>
+ <data name="ADF_Widget_ZoomIn_Desc" xml:space="preserve">
+ <value>Zoom in by a preset increment</value>
+ </data>
+ <data name="ADF_Widget_ZoomIn_Label" xml:space="preserve">
+ <value>Zoom In</value>
+ </data>
+ <data name="ADF_Widget_ZoomOut_Desc" xml:space="preserve">
+ <value>Zoom out by a preset increment</value>
+ </data>
+ <data name="ADF_Widget_ZoomOut_Label" xml:space="preserve">
+ <value>Zoom Out</value>
+ </data>
+ <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <data name="BaseTemplate_ApplicationDefinition" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\BaseTemplate.ApplicationDefinition.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+ </data>
</root>
\ No newline at end of file
Added: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Resources/BaseTemplate.ApplicationDefinition.xml
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Resources/BaseTemplate.ApplicationDefinition.xml (rev 0)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI/Resources/BaseTemplate.ApplicationDefinition.xml 2010-11-21 21:03:39 UTC (rev 5396)
@@ -0,0 +1,1114 @@
+<?xml version="1.0"?>
+<ApplicationDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="ApplicationDefinition-1.0.0.xsd">
+ <TemplateUrl>fusion/templates/mapguide/slate/index.html</TemplateUrl>
+ <MapSet>
+ <MapGroup id="MgMainMapId">
+ <Map>
+ <Type>MapGuide</Type>
+ <SingleTile>true</SingleTile>
+ <Extension>
+ <ResourceId />
+ <SelectionAsOverlay>true</SelectionAsOverlay>
+ <SelectionColor>0x0000FFA0</SelectionColor>
+ </Extension>
+ </Map>
+ <Extension />
+ </MapGroup>
+ </MapSet>
+ <WidgetSet>
+ <Container xsi:type="UiItemContainerType">
+ <Name>Toolbar</Name>
+ <Type>Toolbar</Type>
+ <Position>top</Position>
+ <Extension />
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>RefreshMap</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>SelectRadius</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>SelectPolygon</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ClearSelection</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>BufferPanel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Measure</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>FeatureInfo</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Query</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Theme</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Redline</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Print</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ViewOptions</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>About</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Help</Widget>
+ </Item>
+ </Container>
+ <Container xsi:type="UiItemContainerType">
+ <Name>ToolbarSecondary</Name>
+ <Type>Toolbar</Type>
+ <Position>top</Position>
+ <Extension />
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Select</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Pan</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Zoom</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomIn</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomOut</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>InitialMapView</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomToSelection</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>PreviousView</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>NextView</Widget>
+ </Item>
+ </Container>
+ <Container xsi:type="UiItemContainerType">
+ <Name>ToolbarVertical</Name>
+ <Type>Toolbar</Type>
+ <Position>left</Position>
+ <Extension />
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>SelectNoLabel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>PanNoLabel</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomNoLabel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomInNoLabel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomOutNoLabel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>InitialMapViewNoLabel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomToSelectionNoLabel</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>PreviousViewNoLabel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>NextViewNoLabel</Widget>
+ </Item>
+ </Container>
+ <Container xsi:type="UiItemContainerType">
+ <Name>Statusbar</Name>
+ <Type>Splitterbar</Type>
+ <Position>bottom</Position>
+ <Extension />
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>StatusCoords</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>StatusSelection</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>StatusScale</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>StatusViewSize</Widget>
+ </Item>
+ </Container>
+ <Container xsi:type="UiItemContainerType">
+ <Name>FileMenu</Name>
+ <Type>Toolbar</Type>
+ <Position>top</Position>
+ <Extension />
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>MapMenu</Widget>
+ </Item>
+ <Item xsi:type="FlyoutItemType">
+ <Function>Flyout</Function>
+ <Label>View</Label>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ShowOverviewMap</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ShowTaskWindow</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ShowLegendWindow</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ShowSelectionWindow</Widget>
+ </Item>
+ </Item>
+ </Container>
+ <Container xsi:type="UiItemContainerType">
+ <Name>MapRightClickMenu</Name>
+ <Type>ContextMenu</Type>
+ <Position>top</Position>
+ <Extension />
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>RefreshMap</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Pan</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Zoom</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomIn</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomOut</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="FlyoutItemType">
+ <Function>Flyout</Function>
+ <Label>Zoom</Label>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>InitialMapView</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>PreviousView</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>NextView</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ZoomToSelection</Widget>
+ </Item>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Select</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ClearSelection</Widget>
+ </Item>
+ <Item xsi:type="FlyoutItemType">
+ <Function>Flyout</Function>
+ <Label>Select More</Label>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>SelectRadius</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>SelectPolygon</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>SelectWithin</Widget>
+ </Item>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>BufferPanel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Measure</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>FeatureInfo</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Query</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Theme</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Redline</Widget>
+ </Item>
+ <Item xsi:type="SeparatorItemType">
+ <Function>Separator</Function>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>ViewOptions</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Help</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>About</Widget>
+ </Item>
+ </Container>
+ <Container xsi:type="UiItemContainerType">
+ <Name>TaskMenu</Name>
+ <Type>ContextMenu</Type>
+ <Position>top</Position>
+ <Extension />
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>BufferPanel</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Measure</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>FeatureInfo</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Query</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Theme</Widget>
+ </Item>
+ <Item xsi:type="WidgetItemType">
+ <Function>Widget</Function>
+ <Widget>Redline</Widget>
+ </Item>
+ </Container>
+ <MapWidget>
+ <Name>Map</Name>
+ <Type>Map</Type>
+ <Extension>
+ <MenuContainer>MapRightClickMenu</MenuContainer>
+ </Extension>
+ <MapId>MgMainMapId</MapId>
+ </MapWidget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>About</Name>
+ <Type>About</Type>
+ <Location />
+ <Extension>
+ <AboutURL>widgets/About/About.html</AboutURL>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>about</ImageClass>
+ <Label>About</Label>
+ <Tooltip>Click to show information about this application</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget>
+ <Name>ActivityIndicator</Name>
+ <Type>ActivityIndicator</Type>
+ <Location />
+ <Extension>
+ <ElementId />
+ </Extension>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>BasemapSwitcher</Name>
+ <Type>BasemapSwitcher</Type>
+ <Location />
+ <Extension />
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>options</ImageClass>
+ <Label>External Providers</Label>
+ <Tooltip>Click to change the basemap</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>BufferPanel</Name>
+ <Type>BufferPanel</Type>
+ <Extension>
+ <Target>TaskPane</Target>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>buffer</ImageClass>
+ <Label>Buffer</Label>
+ <Tooltip>Click to create a buffer</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ClearSelection</Name>
+ <Type>ClearSelection</Type>
+ <Extension />
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select-clear</ImageClass>
+ <Label>Clear Selection</Label>
+ <Tooltip>Click to clear the current selection</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>PreviousView</Name>
+ <Type>ExtentHistory</Type>
+ <Extension>
+ <Direction>Previous</Direction>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>view-back</ImageClass>
+ <Label>Previous</Label>
+ <Tooltip>Zoom to previous extents</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>NextView</Name>
+ <Type>ExtentHistory</Type>
+ <Extension>
+ <Direction>Next</Direction>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>view-forward</ImageClass>
+ <Label>Next</Label>
+ <Tooltip>Zoom to next extents</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Help</Name>
+ <Type>Help</Type>
+ <Location />
+ <Extension>
+ <Target>HelpWindow</Target>
+ <Url>widgets/Help/Help.html</Url>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>help</ImageClass>
+ <Label>Help</Label>
+ <Tooltip>Click to get help</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>InitialMapView</Name>
+ <Type>InitialMapView</Type>
+ <Location />
+ <Extension>
+ <ViewType>initial</ViewType>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-full</ImageClass>
+ <Label>Zoom Extents</Label>
+ <Tooltip>Click to zoom to the full map extents</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget>
+ <Name>Legend</Name>
+ <Type>Legend</Type>
+ <Location />
+ <Extension>
+ <HideInvisibleLayers>true</HideInvisibleLayers>
+ <ShowRootFolder>false</ShowRootFolder>
+ <DisabledLayerIcon>images/icons/legend-layer.png</DisabledLayerIcon>
+ <RootFolderIcon>images/icons/legend-map.png</RootFolderIcon>
+ <ShowMapFolder>false</ShowMapFolder>
+ <LayerThemeIcon>images/icons/legend-theme.png</LayerThemeIcon>
+ <LayerRasterIcon>images/icons/legend-raster.png</LayerRasterIcon>
+ <LayerInfoIcon>images/icons/tree_layer_info.png</LayerInfoIcon>
+ <LayerDWFIcon>images/icons/legend-DWF.png</LayerDWFIcon>
+ <GroupInfoIcon>images/icons/tree_group_info.png</GroupInfoIcon>
+ </Extension>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>MapMenu</Name>
+ <Type>MapMenu</Type>
+ <Location />
+ <Extension>
+ <Folder />
+ </Extension>
+ <ImageUrl />
+ <ImageClass />
+ <Label>Maps</Label>
+ <Tooltip>Choose a map theme</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget>
+ <Name>Maptip</Name>
+ <Type>Maptip</Type>
+ <Location />
+ <Extension>
+ <Tolerance>2</Tolerance>
+ <Target>MaptipWindow</Target>
+ <WinFeatures>menubar=no,location=no,resizable=no,status=no</WinFeatures>
+ <Delay>350</Delay>
+ <Layer />
+ </Extension>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Measure</Name>
+ <Type>Measure</Type>
+ <Location />
+ <Extension>
+ <DistancePrecision>4</DistancePrecision>
+ <MeasureTooltipContainer>MeasureContainerBox</MeasureTooltipContainer>
+ <MeasureTooltipType>static</MeasureTooltipType>
+ <MeasureTipPositionLeft>15</MeasureTipPositionLeft>
+ <Units>none</Units>
+ <LineStyleWidth>2</LineStyleWidth>
+ <MeasureTipPositionTop>100</MeasureTipPositionTop>
+ <LineStyleColor>rgba(0,0,255,0.3)</LineStyleColor>
+ <FillStyle>rgba(0,0,255, 0.3)</FillStyle>
+ <Target>TaskPane</Target>
+ <AreaPrecision>4</AreaPrecision>
+ <Type>Both</Type>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>measure</ImageClass>
+ <Label>Measure</Label>
+ <Tooltip>Measure distances and areas on the map</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>FeatureInfo</Name>
+ <Type>FeatureInfo</Type>
+ <Location />
+ <Extension>
+ <Target>TaskPane</Target>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>featureinfo</ImageClass>
+ <Label>Feature Info</Label>
+ <Tooltip>Click to display selected feature info</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Query</Name>
+ <Type>Query</Type>
+ <Location />
+ <Extension>
+ <Target>TaskPane</Target>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>query</ImageClass>
+ <Label>Query</Label>
+ <Tooltip>Click to execute a custom query</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Theme</Name>
+ <Type>Theme</Type>
+ <Location />
+ <Extension>
+ <Target>TaskPane</Target>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>theme</ImageClass>
+ <Label>Theme</Label>
+ <Tooltip>Click to create a themed layer</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Redline</Name>
+ <Type>Redline</Type>
+ <Location />
+ <Extension>
+ <FeatureStyle />
+ <Target>TaskPane</Target>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>redline</ImageClass>
+ <Label>Redline</Label>
+ <Tooltip>Click to draw redline features</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget>
+ <Name>Navigator</Name>
+ <Type>Navigator</Type>
+ <Location />
+ <Extension />
+ </Widget>
+ <Widget>
+ <Name>OverviewMap</Name>
+ <Type>OverviewMap</Type>
+ <Location />
+ <Extension>
+ <MinRatio>32</MinRatio>
+ <MapId />
+ <MaxRatio>128</MaxRatio>
+ </Extension>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Pan</Name>
+ <Type>Pan</Type>
+ <Location />
+ <Extension />
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>pan</ImageClass>
+ <Label>Pan</Label>
+ <Tooltip>Click and drag to pan the map</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Print</Name>
+ <Type>Print</Type>
+ <Extension>
+ <ShowPrintUI>true</ShowPrintUI>
+ <ShowNorthArrow>false</ShowNorthArrow>
+ <PageTitle />
+ <ImageBaseUrl />
+ <ShowLegend>false</ShowLegend>
+ <ShowTitle>false</ShowTitle>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>file-print</ImageClass>
+ <Label>Print</Label>
+ <Tooltip>Print the current map view</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>RefreshMap</Name>
+ <Type>RefreshMap</Type>
+ <Location />
+ <Extension />
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>view-refresh</ImageClass>
+ <Label>Refresh</Label>
+ <Tooltip>Click to redraw the map</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>SaveMap</Name>
+ <Type>SaveMap</Type>
+ <Extension>
+ <Format>png</Format>
+ <Scale />
+ <ResourceId />
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>file-save</ImageClass>
+ <Label>Save map</Label>
+ <Tooltip>Click to save the map as an image</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Select</Name>
+ <Type>Select</Type>
+ <Location />
+ <Extension>
+ <Tolerance>3</Tolerance>
+ <SelectionType>INTERSECTS</SelectionType>
+ <QueryActiveLayer>false</QueryActiveLayer>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select</ImageClass>
+ <Label>Select</Label>
+ <Tooltip>Click to select features</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget>
+ <Name>SelectionPanel</Name>
+ <Type>SelectionPanel</Type>
+ <Location />
+ <Extension />
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>SelectPolygon</Name>
+ <Type>SelectPolygon</Type>
+ <Location />
+ <Extension>
+ <Tolerance>3</Tolerance>
+ <SelectionType>INTERSECTS</SelectionType>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select-polygon</ImageClass>
+ <Label>Select Polygon</Label>
+ <Tooltip>Draw a polygon to perform a selection</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>SelectRadius</Name>
+ <Type>SelectRadius</Type>
+ <Extension>
+ <Tolerance>3</Tolerance>
+ <RadiusTooltipType>dynamic</RadiusTooltipType>
+ <RadiusTooltipContainer />
+ <SelectionType>INTERSECTS</SelectionType>
+ <DefaultRadius>20</DefaultRadius>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select-radius</ImageClass>
+ <Label>Select Radius</Label>
+ <Tooltip>Click to select within a radius</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>SelectWithin</Name>
+ <Type>SelectWithin</Type>
+ <Location />
+ <Extension>
+ <Target>TaskPane</Target>
+ <DisableIfSelectionEmpty>true</DisableIfSelectionEmpty>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select-features</ImageClass>
+ <Label>Select within</Label>
+ <Tooltip>Click to select features within this selection</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget>
+ <Name>TaskPane</Name>
+ <Type>TaskPane</Type>
+ <Location />
+ <Extension>
+ <MenuContainer>TaskMenu</MenuContainer>
+ <InitialTask />
+ </Extension>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ViewOptions</Name>
+ <Type>ViewOptions</Type>
+ <Location />
+ <Extension>
+ <DisplayUnits />
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>options</ImageClass>
+ <Label>Options</Label>
+ <Tooltip>Click to change the units displayed</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>Zoom</Name>
+ <Type>Zoom</Type>
+ <Extension>
+ <Tolerance>5</Tolerance>
+ <Factor>2</Factor>
+ <Direction>in</Direction>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-in</ImageClass>
+ <Label>Zoom Rectangle</Label>
+ <Tooltip>Click or click and drag on the map to zoom in</Tooltip>
+ <StatusText>Click or click and drag on the map to zoom in</StatusText>
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ZoomOut</Name>
+ <Type>ZoomOnClick</Type>
+ <Location />
+ <Extension>
+ <Factor>0.5</Factor>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-out-fixed</ImageClass>
+ <Label>Zoom Out</Label>
+ <Tooltip>Zoom out to display a larger area</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ZoomIn</Name>
+ <Type>ZoomOnClick</Type>
+ <Location />
+ <Extension>
+ <Factor>2.0</Factor>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-in-fixed</ImageClass>
+ <Label>Zoom In</Label>
+ <Tooltip>Zoom in to display more detail</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ZoomToSelection</Name>
+ <Type>ZoomToSelection</Type>
+ <Location />
+ <Extension>
+ <MaximumZoomDimension>-1</MaximumZoomDimension>
+ <ZoomFactor>2</ZoomFactor>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select-zoom</ImageClass>
+ <Label>Zoom Selection</Label>
+ <Tooltip>Click to zoom to the selection</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>InitialMapViewNoLabel</Name>
+ <Type>InitialMapView</Type>
+ <Location />
+ <Extension>
+ <ViewType>initial</ViewType>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-full</ImageClass>
+ <Label />
+ <Tooltip>Click to zoom to the full map extents</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>NextViewNoLabel</Name>
+ <Type>ExtentHistory</Type>
+ <Extension>
+ <Direction>Next</Direction>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>view-forward</ImageClass>
+ <Label />
+ <Tooltip>Zoom to next extents</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>PanNoLabel</Name>
+ <Type>Pan</Type>
+ <Location />
+ <Extension />
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>pan</ImageClass>
+ <Label />
+ <Tooltip>Click and drag to pan the map</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>PreviousViewNoLabel</Name>
+ <Type>ExtentHistory</Type>
+ <Extension>
+ <Direction>Previous</Direction>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>view-back</ImageClass>
+ <Label />
+ <Tooltip>Zoom to previous extents</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>SelectNoLabel</Name>
+ <Type>Select</Type>
+ <Location />
+ <Extension>
+ <Tolerance>3</Tolerance>
+ <SelectionType>INTERSECTS</SelectionType>
+ <QueryActiveLayer>false</QueryActiveLayer>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select</ImageClass>
+ <Label />
+ <Tooltip>Click to select features</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ZoomNoLabel</Name>
+ <Type>Zoom</Type>
+ <Extension>
+ <Tolerance>5</Tolerance>
+ <Factor>2</Factor>
+ <Direction>in</Direction>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-in</ImageClass>
+ <Label />
+ <Tooltip>Click or click and drag on the map to zoom in</Tooltip>
+ <StatusText>Click or click and drag on the map to zoom in</StatusText>
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ZoomInNoLabel</Name>
+ <Type>ZoomOnClick</Type>
+ <Location />
+ <Extension>
+ <Factor>2.0</Factor>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-in-fixed</ImageClass>
+ <Label />
+ <Tooltip>Zoom in to display more detail</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ZoomOutNoLabel</Name>
+ <Type>ZoomOnClick</Type>
+ <Location />
+ <Extension>
+ <Factor>0.5</Factor>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>zoom-out-fixed</ImageClass>
+ <Label />
+ <Tooltip>Zoom out to display a larger area</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ZoomToSelectionNoLabel</Name>
+ <Type>ZoomToSelection</Type>
+ <Location />
+ <Extension>
+ <MaximumZoomDimension>-1</MaximumZoomDimension>
+ <ZoomFactor>2</ZoomFactor>
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>select-zoom</ImageClass>
+ <Label />
+ <Tooltip>Click to zoom to the selection</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ShowOverviewMap</Name>
+ <Type>InvokeScript</Type>
+ <Location />
+ <Extension>
+ <Script>showOverviewMap()</Script>
+ <Target />
+ </Extension>
+ <ImageUrl />
+ <ImageClass />
+ <Label>Show Overview Map</Label>
+ <Tooltip>Display the overview map window</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ShowTaskWindow</Name>
+ <Type>InvokeScript</Type>
+ <Location />
+ <Extension>
+ <Script>showTaskPane()</Script>
+ <Target />
+ </Extension>
+ <ImageUrl />
+ <ImageClass />
+ <Label>Show Task Pane</Label>
+ <Tooltip>Display the task pane window</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ShowLegendWindow</Name>
+ <Type>InvokeScript</Type>
+ <Location />
+ <Extension>
+ <Script>showLegend()</Script>
+ <Target />
+ </Extension>
+ <ImageUrl />
+ <ImageClass />
+ <Label>Show Legend</Label>
+ <Tooltip>Display the legend window</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>ShowSelectionWindow</Name>
+ <Type>InvokeScript</Type>
+ <Location />
+ <Extension>
+ <Script>showSelectionPanel()</Script>
+ <Target />
+ </Extension>
+ <ImageUrl />
+ <ImageClass />
+ <Label>Show Selection Panel</Label>
+ <Tooltip>Display the selection window</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget>
+ <Name>StatusCoords</Name>
+ <Type>CursorPosition</Type>
+ <Extension>
+ <Precision>4</Precision>
+ <Template>x: {x}, y: {y}</Template>
+ <Units>dd</Units>
+ </Extension>
+ </Widget>
+ <Widget>
+ <Name>StatusSelection</Name>
+ <Type>SelectionInfo</Type>
+ <Location />
+ <Extension>
+ <EmptyText>No features selected</EmptyText>
+ <Template>{0} feature(s) selected on {1} layer(s)</Template>
+ </Extension>
+ </Widget>
+ <Widget>
+ <Name>StatusScale</Name>
+ <Type>EditableScale</Type>
+ <Extension>
+ <Precision>4</Precision>
+ </Extension>
+ </Widget>
+ <Widget>
+ <Name>StatusViewSize</Name>
+ <Type>ViewSize</Type>
+ <Location />
+ <Extension>
+ <Precision>2</Precision>
+ <Template>{w} x {h} {units}</Template>
+ <Units>Meters</Units>
+ </Extension>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>StatusOverviewMap</Name>
+ <Type>InvokeScript</Type>
+ <Location />
+ <Extension>
+ <Script>showOverviewMap()</Script>
+ <Target />
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>iconNavigator</ImageClass>
+ <Label />
+ <Tooltip>Display the overview map window</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ <Widget xsi:type="UiWidgetType">
+ <Name>StatusNavigator</Name>
+ <Type>InvokeScript</Type>
+ <Location />
+ <Extension>
+ <Script>showOverviewMap()</Script>
+ <Target />
+ </Extension>
+ <ImageUrl>images/icons.png</ImageUrl>
+ <ImageClass>iconNavigator</ImageClass>
+ <Label />
+ <Tooltip>Display the overview map window</Tooltip>
+ <StatusText />
+ <Disabled>false</Disabled>
+ </Widget>
+ </WidgetSet>
+ <Extension />
+</ApplicationDefinition>
\ No newline at end of file
Modified: sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI.Http/HttpCoordinateSystem.cs
===================================================================
--- sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI.Http/HttpCoordinateSystem.cs 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/OSGeo.MapGuide.MaestroAPI.Http/HttpCoordinateSystem.cs 2010-11-21 21:03:39 UTC (rev 5396)
@@ -17,25 +17,6 @@
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
//
#endregion
-#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.Xml;
using System.Collections;
Modified: sandbox/maestro-3.0/SDK/SDK.sln
===================================================================
--- sandbox/maestro-3.0/SDK/SDK.sln 2010-11-19 09:36:30 UTC (rev 5395)
+++ sandbox/maestro-3.0/SDK/SDK.sln 2010-11-21 21:03:39 UTC (rev 5396)
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
+# Visual C# Express 2008
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OSGeo.MapGuide.MaestroAPI", "..\OSGeo.MapGuide.MaestroAPI\OSGeo.MapGuide.MaestroAPI.csproj", "{80FA3158-8B5F-48D1-A393-0378AFE48A7E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OSGeo.MapGuide.MaestroAPI.Http", "..\OSGeo.MapGuide.MaestroAPI.Http\OSGeo.MapGuide.MaestroAPI.Http.csproj", "{6EF1E775-444B-4E5F-87FB-D687C43A68D7}"
@@ -33,6 +33,8 @@
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MaestroAPITests", "..\MaestroAPITests\MaestroAPITests.csproj", "{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MaestroAPITestRunner", "..\MaestroAPITestRunner\MaestroAPITestRunner.csproj", "{50C12B5C-387C-4007-A1D1-CB181CB474CC}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -103,6 +105,10 @@
{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Debug|Any CPU.Build.0 = Debug|Any CPU
{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Release|Any CPU.ActiveCfg = Release|Any CPU
{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Release|Any CPU.Build.0 = Release|Any CPU
+ {50C12B5C-387C-4007-A1D1-CB181CB474CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {50C12B5C-387C-4007-A1D1-CB181CB474CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {50C12B5C-387C-4007-A1D1-CB181CB474CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {50C12B5C-387C-4007-A1D1-CB181CB474CC}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
More information about the mapguide-commits
mailing list