[mapguide-commits] r7505 - branches/maestro-4.0.x/OSGeo.MapGuide.MaestroAPI/Mapping
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Mon May 20 04:50:44 PDT 2013
Author: jng
Date: 2013-05-20 04:50:43 -0700 (Mon, 20 May 2013)
New Revision: 7505
Modified:
branches/maestro-4.0.x/OSGeo.MapGuide.MaestroAPI/Mapping/RuntimeMapLayer.cs
Log:
#2233: Fix for drawing layers too.
Modified: branches/maestro-4.0.x/OSGeo.MapGuide.MaestroAPI/Mapping/RuntimeMapLayer.cs
===================================================================
--- branches/maestro-4.0.x/OSGeo.MapGuide.MaestroAPI/Mapping/RuntimeMapLayer.cs 2013-05-20 11:24:39 UTC (rev 7504)
+++ branches/maestro-4.0.x/OSGeo.MapGuide.MaestroAPI/Mapping/RuntimeMapLayer.cs 2013-05-20 11:50:43 UTC (rev 7505)
@@ -138,6 +138,13 @@
_featureSourceId = rl.ResourceId;
InitScaleRanges(rl);
}
+ else if (ldf.SubLayer.LayerType == LayerType.Drawing)
+ {
+ var dl = ((IDrawingLayerDefinition)ldf.SubLayer);
+ _featureSourceId = dl.ResourceId;
+ _scaleRanges = new double[] { dl.MinScale, dl.MaxScale };
+ EnsureOrderedMinMaxScales();
+ }
_expandInLegend = false;
this.Name = ResourceIdentifier.GetName(ldf.ResourceID);
@@ -231,6 +238,14 @@
{
case LayerType.Drawing:
{
+ IDrawingLayerDefinition dl = (IDrawingLayerDefinition)ldf.SubLayer;
+ _featureSourceId = dl.ResourceId;
+ _scaleRanges = new double[]
+ {
+ dl.MinScale,
+ dl.MaxScale
+ };
+ EnsureOrderedMinMaxScales();
}
break;
case LayerType.Raster:
@@ -240,17 +255,7 @@
_geometryPropertyName = rdf.Geometry;
_qualifiedClassName = rdf.FeatureName;
- if (rdf.GridScaleRangeCount > 0)
- {
- _scaleRanges = new double[rdf.GridScaleRangeCount * 2];
- int i = 0;
- foreach (var gsr in rdf.GridScaleRange)
- {
- _scaleRanges[i * 2] = gsr.MinScale.HasValue ? gsr.MinScale.Value : 0;
- _scaleRanges[i * 2 + 1] = gsr.MaxScale.HasValue ? gsr.MaxScale.Value : InfinityScale;
- i++;
- }
- }
+ InitScaleRanges(rdf);
}
break;
case LayerType.Vector:
@@ -261,17 +266,7 @@
_qualifiedClassName = vld.FeatureName;
_filter = vld.Filter;
- if (vld.HasVectorScaleRanges())
- {
- int vsrCount = vld.GetScaleRangeCount();
- _scaleRanges = new double[vsrCount * 2];
- for (int i = 0; i < vsrCount; i++)
- {
- var vsr = vld.GetScaleRangeAt(i);
- _scaleRanges[i * 2] = vsr.MinScale.HasValue ? vsr.MinScale.Value : 0;
- _scaleRanges[i * 2 + 1] = vsr.MaxScale.HasValue ? vsr.MaxScale.Value : InfinityScale;
- }
- }
+ InitScaleRanges(vld);
_hasTooltips = !string.IsNullOrEmpty(vld.ToolTip);
//get identity property information
InitIdentityProperties(vld);
More information about the mapguide-commits
mailing list