[mapguide-commits] r8234 - trunk/Tools/Maestro/Maestro.Editors/Preview
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Mon Jun 16 22:46:21 PDT 2014
Author: jng
Date: 2014-06-16 22:46:21 -0700 (Mon, 16 Jun 2014)
New Revision: 8234
Modified:
trunk/Tools/Maestro/Maestro.Editors/Preview/DefaultResourcePreviewer.cs
trunk/Tools/Maestro/Maestro.Editors/Preview/LocalMapPreviewer.cs
trunk/Tools/Maestro/Maestro.Editors/Preview/ResourcePreviewEngine.cs
Log:
#2455: Disable previews for untyped resources except for Map Definitions, Web Layouts and Application Definitions
Modified: trunk/Tools/Maestro/Maestro.Editors/Preview/DefaultResourcePreviewer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Preview/DefaultResourcePreviewer.cs 2014-06-17 03:00:15 UTC (rev 8233)
+++ trunk/Tools/Maestro/Maestro.Editors/Preview/DefaultResourcePreviewer.cs 2014-06-17 05:46:21 UTC (rev 8234)
@@ -178,13 +178,26 @@
var rt = res.ResourceType;
if (res.CurrentConnection.Capabilities.SupportsResourcePreviews)
{
+ bool bKnownResourceType = !(res is UntypedResource);
if (rt == ResourceTypes.SymbolDefinition.ToString())
{
- return res.CurrentConnection.SiteVersion >= new Version(2, 0) && Array.IndexOf(res.CurrentConnection.Capabilities.SupportedServices, (int)ServiceType.Mapping) >= 0;
+ return bKnownResourceType && res.CurrentConnection.SiteVersion >= new Version(2, 0) && Array.IndexOf(res.CurrentConnection.Capabilities.SupportedServices, (int)ServiceType.Mapping) >= 0;
}
else
{
- return ResourcePreviewEngine.IsPreviewableType(rt);
+ bool bPreviewable = ResourcePreviewEngine.IsPreviewableType(rt);
+ //A Map Definition can be saved directly and referenced by a Web Layout
+ //An Web Layout and Application Definition can be saved directly and
+ //passed straight to the AJAX/Fusion viewers.
+ //
+ //So even if they're UntypedResource instances, they're still "previewable" for the purpose
+ //of this test
+ if (res.ResourceType != ResourceTypes.MapDefinition.ToString() &&
+ res.ResourceType != ResourceTypes.WebLayout.ToString() &&
+ res.ResourceType != ResourceTypes.ApplicationDefinition.ToString())
+ return bKnownResourceType && bPreviewable;
+ else
+ return bPreviewable;
}
}
return false;
Modified: trunk/Tools/Maestro/Maestro.Editors/Preview/LocalMapPreviewer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Preview/LocalMapPreviewer.cs 2014-06-17 03:00:15 UTC (rev 8233)
+++ trunk/Tools/Maestro/Maestro.Editors/Preview/LocalMapPreviewer.cs 2014-06-17 05:46:21 UTC (rev 8234)
@@ -78,9 +78,10 @@
private static bool IsLocalPreviewableType(IResource res)
{
- return res.ResourceType == ResourceTypes.LayerDefinition.ToString() ||
+ return (res.ResourceType == ResourceTypes.LayerDefinition.ToString() ||
res.ResourceType == ResourceTypes.MapDefinition.ToString() ||
- res.ResourceType == ResourceTypes.WatermarkDefinition.ToString();
+ res.ResourceType == ResourceTypes.WatermarkDefinition.ToString()) &&
+ !(res is OSGeo.MapGuide.ObjectModels.UntypedResource);
}
/// <summary>
Modified: trunk/Tools/Maestro/Maestro.Editors/Preview/ResourcePreviewEngine.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/Preview/ResourcePreviewEngine.cs 2014-06-17 03:00:15 UTC (rev 8233)
+++ trunk/Tools/Maestro/Maestro.Editors/Preview/ResourcePreviewEngine.cs 2014-06-17 05:46:21 UTC (rev 8234)
@@ -292,14 +292,15 @@
var sessionId = _edSvc.SessionID;
var mdfId = "Session:" + sessionId + "//" + Guid.NewGuid() + ".MapDefinition"; //NOXLATE
- var mdf = (IMapDefinition)res;
-
- var conn = mdf.CurrentConnection;
- IMapDefinition2 mdf2 = mdf as IMapDefinition2;
- if (mdf2 != null && PreviewSettings.AddDebugWatermark)
- CreateDebugWatermark(mdf2, conn, null);
- conn.ResourceService.SaveResourceAs(mdf, mdfId);
-
+ var conn = res.CurrentConnection;
+ var mdf = res as IMapDefinition;
+ if (mdf != null)
+ {
+ IMapDefinition2 mdf2 = mdf as IMapDefinition2;
+ if (mdf2 != null && PreviewSettings.AddDebugWatermark)
+ CreateDebugWatermark(mdf2, conn, null);
+ }
+ conn.ResourceService.SaveResourceAs(res, mdfId);
//if (PropertyService.Get(ConfigProperties.PreviewViewerType, "AJAX").Equals("AJAX")) //NOXLATE
if (PreviewSettings.UseAjaxViewer)
{
More information about the mapguide-commits
mailing list