<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class=Section1>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif"'>Pietro
this helps and I will try this out. I have worked with Coldfusion and .NET
using MapGuide API and I have played with the MapGuide OL example till I was
blue in the face. This helps fill in the gaps between those. Your </span>options
(useOverlay=true, useAsyncOverlay=true) with [show/hide] should at least get me
showing a map with the ability to turn on and off layers with JavaScript. If we
had more examples like this we might bring open source back to mapguide open
source <span style='font-family:Wingdings'>J</span> I will tell you what, time
allowing as I get basics as stated in my first post cleaned up and documented I
will have no problem reposting the summaries on MapGuide WIKI for others to benefit
from.<span style='font-size:11.0pt;font-family:"Calibri","sans-serif"'><o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Regards,<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Chris Gountanis<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> Pietro Ianniello
[via OSGeo.org] [mailto:<a href="http://n2.nabble.com/user/SendEmail.jtp?type=node&node=4759592&i=0" target="_top" rel="nofollow">[hidden email]</a>] <br>
<b>Sent:</b> Thursday, March 18, 2010 4:05 PM<br>
<b>To:</b> Chris Gountanis<br>
<b>Subject:</b> Re: MapGuide with Openlayers (Searching for Detailed yet Simple
Development Examples)<o:p></o:p></span></p>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNoSpacing>This is a simple example using <a href="http://ASP.NET"
target="_top" rel="nofollow" link="external">ASP.NET</a> and OpenLayers using the usual Sheboygan example.
Sorry but I don't know yet how to load legend. For the selection I have not
tried yet, but OpenLayers accepts the xml returned by selection in params, so
using selection as in MapGuide Dev''s guide should work [see comment in
code] - I didn't tested.<br>
For tooltips you can query the server on mouse move, standard AJAX stuff, but I
would do it only in intranets or with big server power, otherwise you would be
bombing the server with requests.<br>
To have more layers, you can add an overlay [<i>in options useOverlay=true,
useAsyncOverlay=true, the second only for MapGuide>=2.1</i>] using the same
session, just changing show/hide layers string.<br>
And yes, to come up with the following code was really hard! <br>
NOTE: call in <b>Global.asax</b> MapGuideApi.MgInitializeWebTier(Webconfig Ini
Physical Path);<br>
<br>
<i>Devs guide says this shoul be called on every request, I call it once in <b>Global.asax</b>,
and it works. I don't know more and haven't found any info!</i><br>
<br>
<br>
<br>
<%@ Page Language="C#" %><o:p></o:p></p>
<p class=MsoNoSpacing><%@ Import Namespace="OSGeo.MapGuide" %><o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing><script runat="server"><o:p></o:p></p>
<p class=MsoNoSpacing> private string _strSessionId =
"";<o:p></o:p></p>
<p class=MsoNoSpacing> private string _mapName =
"";<o:p></o:p></p>
<p class=MsoNoSpacing> string _csvShowLayers = "";<o:p></o:p></p>
<p class=MsoNoSpacing> string _csvHideLayers = "";<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing> protected string GetMapName()<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing> return
_mapName;<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> protected string GetMapSession()<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing> return
_strSessionId;<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> protected string GetShowlayers()<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing> return
_csvShowLayers;<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> protected string GetHidelayers()<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing> return
_csvHideLayers;<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing> private void MgDispose(MgDisposable
obj)<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing> if (obj !=
null) obj.Dispose();<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing> protected void Page_Load(object
sender, EventArgs e)<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing>
MgUserInformation userInfo = null;<o:p></o:p></p>
<p class=MsoNoSpacing> MgSiteConnection
siteConnection = null;<o:p></o:p></p>
<p class=MsoNoSpacing> MgSite site =
null;<o:p></o:p></p>
<p class=MsoNoSpacing>
MgResourceIdentifier resourceId = null;<o:p></o:p></p>
<p class=MsoNoSpacing>
MgMappingService mappingService = null;<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing> MgMap map =
null;<o:p></o:p></p>
<p class=MsoNoSpacing>
MgResourceService resourceService = null;<o:p></o:p></p>
<p class=MsoNoSpacing> MgSelection selection
= null;<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
MgLayerCollection lColl = null;<o:p></o:p></p>
<p class=MsoNoSpacing> MgLayerBase
layerBase = null;<o:p></o:p></p>
<p class=MsoNoSpacing>
MgResourceIdentifier sessionIdResourceIdentifier = null;<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing> try<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing>
userInfo = new MgUserInformation("Anonymous", "");<o:p></o:p></p>
<p class=MsoNoSpacing>
siteConnection = new MgSiteConnection();<o:p></o:p></p>
<p class=MsoNoSpacing>
siteConnection.Open(userInfo);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
site = siteConnection.GetSite();<o:p></o:p></p>
<p class=MsoNoSpacing>
_strSessionId = site.CreateSession();<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
//---------------------------------------------------<o:p></o:p></p>
<p class=MsoNoSpacing>
//Save new mapguide session<o:p></o:p></p>
<p class=MsoNoSpacing>
userInfo.SetMgSessionId(_strSessionId);<o:p></o:p></p>
<p class=MsoNoSpacing>
//---------------------------------------------------<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
resourceId = new
MgResourceIdentifier("Library://Samples/Sheboygan/Maps/Sheboygan.MapDefinition");<o:p></o:p></p>
<p class=MsoNoSpacing>
_mapName = resourceId.GetName();<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
//------------------------------------------------<o:p></o:p></p>
<p class=MsoNoSpacing>
//Layers objectId<o:p></o:p></p>
<p class=MsoNoSpacing>
mappingService =
(MgMappingService)siteConnection.CreateService(MgServiceType.MappingService);<o:p></o:p></p>
<p class=MsoNoSpacing>
map = new MgMap();<o:p></o:p></p>
<p class=MsoNoSpacing>
resourceService = siteConnection.CreateService(MgServiceType.ResourceService)
as MgResourceService;<o:p></o:p></p>
<p class=MsoNoSpacing>
map.Create(resourceService, resourceId, _mapName);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
lColl = map.GetLayers();<o:p></o:p></p>
<p class=MsoNoSpacing> int
iMax = lColl.Count;<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
//Let's show only Districts & Hydrography:<o:p></o:p></p>
<p class=MsoNoSpacing>
StringBuilder sbShow = new StringBuilder();<o:p></o:p></p>
<p class=MsoNoSpacing>
StringBuilder sbHide = new StringBuilder();<o:p></o:p></p>
<p class=MsoNoSpacing>
int iHid = 0, iShow = 0;<o:p></o:p></p>
<p class=MsoNoSpacing>
for (int i = 0; i < iMax; ++i)<o:p></o:p></p>
<p class=MsoNoSpacing>
{<o:p></o:p></p>
<p class=MsoNoSpacing>
if (null != layerBase) layerBase.Dispose();<o:p></o:p></p>
<p class=MsoNoSpacing>
layerBase = lColl[i];<o:p></o:p></p>
<p class=MsoNoSpacing>
string layername = layerBase.GetName();<o:p></o:p></p>
<p class=MsoNoSpacing>
if (layername == "Districts")<o:p></o:p></p>
<p class=MsoNoSpacing>
{<o:p></o:p></p>
<p class=MsoNoSpacing>
if (iShow > 0) sbShow.Append(",");<o:p></o:p></p>
<p class=MsoNoSpacing>
sbShow.Append(layerBase.GetObjectId());<o:p></o:p></p>
<p class=MsoNoSpacing>
++iShow;<o:p></o:p></p>
<p class=MsoNoSpacing>
}<o:p></o:p></p>
<p class=MsoNoSpacing>
else if (layername == "Hydrography")<o:p></o:p></p>
<p class=MsoNoSpacing>
{<o:p></o:p></p>
<p class=MsoNoSpacing> if
(iShow > 0) sbShow.Append(",");<o:p></o:p></p>
<p class=MsoNoSpacing>
sbShow.Append(layerBase.GetObjectId());<o:p></o:p></p>
<p class=MsoNoSpacing>
++iShow;<o:p></o:p></p>
<p class=MsoNoSpacing>
}<o:p></o:p></p>
<p class=MsoNoSpacing>
else<o:p></o:p></p>
<p class=MsoNoSpacing>
{<o:p></o:p></p>
<p class=MsoNoSpacing>
if (iHid > 0) sbHide.Append(",");<o:p></o:p></p>
<p class=MsoNoSpacing> sbHide.Append(layerBase.GetObjectId());<o:p></o:p></p>
<p class=MsoNoSpacing>
++iHid;<o:p></o:p></p>
<p class=MsoNoSpacing>
}<o:p></o:p></p>
<p class=MsoNoSpacing>
}<o:p></o:p></p>
<p class=MsoNoSpacing>
_csvHideLayers = sbHide.ToString();<o:p></o:p></p>
<p class=MsoNoSpacing>
_csvShowLayers = sbShow.ToString();<o:p></o:p></p>
<p class=MsoNoSpacing>
//------------------------------------------------<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
//------------------------------------------------<o:p></o:p></p>
<p class=MsoNoSpacing>
//Necessary to show maps:<o:p></o:p></p>
<p class=MsoNoSpacing>
selection = new MgSelection(map);<o:p></o:p></p>
<p class=MsoNoSpacing>
selection.Save(resourceService, _mapName);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
sessionIdResourceIdentifier = new MgResourceIdentifier(String.Concat("Session:",
_strSessionId, "//", _mapName, ".", MgResourceType.Map));<o:p></o:p></p>
<p class=MsoNoSpacing>
map.Save(resourceService, sessionIdResourceIdentifier);<o:p></o:p></p>
<p class=MsoNoSpacing> //------------------------------------------------<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> catch<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing>
throw;//TODO: Handle exceptions<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> finally<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(sessionIdResourceIdentifier);<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(selection);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
MgDispose(layerBase);<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(lColl);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
MgDispose(resourceService);<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(map);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
MgDispose(resourceId);<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(mappingService);<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(site);<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(siteConnection);<o:p></o:p></p>
<p class=MsoNoSpacing>
MgDispose(userInfo);<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing></script><o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing><html
xmlns="http://www.w3.org/1999/xhtml"><o:p></o:p></p>
<p class=MsoNoSpacing><head runat="server"><o:p></o:p></p>
<p class=MsoNoSpacing> <title></title><o:p></o:p></p>
<p class=MsoNoSpacing> <script
type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script><o:p></o:p></p>
<p class=MsoNoSpacing> <style
type="text/css"><o:p></o:p></p>
<p class=MsoNoSpacing> #map_mg<o:p></o:p></p>
<p class=MsoNoSpacing> {<o:p></o:p></p>
<p class=MsoNoSpacing> width: 500px;<o:p></o:p></p>
<p class=MsoNoSpacing> height:500px;<o:p></o:p></p>
<p class=MsoNoSpacing> float: left;<o:p></o:p></p>
<p class=MsoNoSpacing> border:solid
1px #000;<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> </style><o:p></o:p></p>
<p class=MsoNoSpacing> <o:p></o:p></p>
<p class=MsoNoSpacing></head><o:p></o:p></p>
<p class=MsoNoSpacing><body onload="init()"><o:p></o:p></p>
<p class=MsoNoSpacing> <form
id="form1" runat="server"><o:p></o:p></p>
<p class=MsoNoSpacing> <div><o:p></o:p></p>
<p class=MsoNoSpacing> <h2>Qick
example: TODO: Dispose all map guide objects, use StringBuilder,
etc...</h2><o:p></o:p></p>
<p class=MsoNoSpacing>
<h3>Showing only Districts/Hydrography</h3><o:p></o:p></p>
<p class=MsoNoSpacing> </div><o:p></o:p></p>
<p class=MsoNoSpacing> <div
id="map_mg"><o:p></o:p></p>
<p class=MsoNoSpacing> </div><o:p></o:p></p>
<p class=MsoNoSpacing> </form><o:p></o:p></p>
<p class=MsoNoSpacing> <o:p></o:p></p>
<p class=MsoNoSpacing> <script
type="text/javascript"><o:p></o:p></p>
<p class=MsoNoSpacing> var addrs =
"http://localhost/"; //TODO: get the address of your server<o:p></o:p></p>
<p class=MsoNoSpacing> var mg_url =
addrs + "mapguide/mapagent/mapagent.fcgi?USERNAME=Anonymous&";<o:p></o:p></p>
<p class=MsoNoSpacing> var
metersPerUnit = 111319.4908; //TODO: get value returned from mapguide on
server side<o:p></o:p></p>
<p class=MsoNoSpacing> var inPerUnit
= OpenLayers.INCHES_PER_UNIT.m * metersPerUnit;<o:p></o:p></p>
<p class=MsoNoSpacing>
OpenLayers.INCHES_PER_UNIT["dd"] = inPerUnit;<o:p></o:p></p>
<p class=MsoNoSpacing>
OpenLayers.INCHES_PER_UNIT["degrees"] = inPerUnit;<o:p></o:p></p>
<p class=MsoNoSpacing>
OpenLayers.DOTS_PER_INCH = 96;<o:p></o:p></p>
<p class=MsoNoSpacing> var _map =
null;<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing> function
init() {<o:p></o:p></p>
<p class=MsoNoSpacing>
//TODO: get extent from mapguide on server side<o:p></o:p></p>
<p class=MsoNoSpacing>
// I usually get extent on server side, I don't
write here code, because Double's ToString<o:p></o:p></p>
<p class=MsoNoSpacing>
// in my locle [Italian] gives ","
insted of ".", and I have an assembly to make conversion.<o:p></o:p></p>
<p class=MsoNoSpacing>
// You can find howto do it easily on
Programmer's guide or on WebApi help<o:p></o:p></p>
<p class=MsoNoSpacing>
var extent = new OpenLayers.Bounds(-87.865114442365922, 43.665065564837931,
-87.595394059497067, 43.823852564430069);<o:p></o:p></p>
<p class=MsoNoSpacing>
var mapOptions = {<o:p></o:p></p>
<p class=MsoNoSpacing>
maxExtent: extent,<o:p></o:p></p>
<p class=MsoNoSpacing>
maxResolution: 'auto'<o:p></o:p></p>
<p class=MsoNoSpacing>
};<o:p></o:p></p>
<p class=MsoNoSpacing>
_map = new OpenLayers.Map('map_mg', mapOptions);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
var options = {<o:p></o:p></p>
<p class=MsoNoSpacing>
isBaseLayer: true,<o:p></o:p></p>
<p class=MsoNoSpacing>
buffer: 1,<o:p></o:p></p>
<p class=MsoNoSpacing>
useOverlay: false,<o:p></o:p></p>
<p class=MsoNoSpacing>
useAsyncOverlay: false,<o:p></o:p></p>
<p class=MsoNoSpacing>
singleTile: true<o:p></o:p></p>
<p class=MsoNoSpacing>
//, transitionEffect: 'resize'<o:p></o:p></p>
<p class=MsoNoSpacing>
};<o:p></o:p></p>
<p class=MsoNoSpacing>
var params = {};<o:p></o:p></p>
<p class=MsoNoSpacing>
params.mapName = '<%= GetMapName() %>';<o:p></o:p></p>
<p class=MsoNoSpacing>
params.session = '<%= GetMapSession() %>';<o:p></o:p></p>
<p class=MsoNoSpacing>
params.hideLayers = '<%= GetHidelayers() %>';<o:p></o:p></p>
<p class=MsoNoSpacing>
params.showLayers = '<%= GetShowlayers() %>';<o:p></o:p></p>
<p class=MsoNoSpacing> //
- Depending on Groups you can use params.showGroups/hideGroups<o:p></o:p></p>
<p class=MsoNoSpacing>
// - Making a selection os server side, you can get that selection and pass
here as param.selectionXml<o:p></o:p></p>
<p class=MsoNoSpacing>
// - I have read somewhere that locale should be passed [and that in some cases
is mandatory] too, but it works for me even without<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
var mg_layer = new OpenLayers.Layer.MapGuide("MapGuide Sheboygan
map", mg_url, params, options);<o:p></o:p></p>
<p class=MsoNoSpacing>
_map.addLayer(mg_layer);<o:p></o:p></p>
<p class=MsoNoSpacing><o:p> </o:p></p>
<p class=MsoNoSpacing>
_map.addControl(new OpenLayers.Control.MousePosition());<o:p></o:p></p>
<p class=MsoNoSpacing>
_map.zoomToMaxExtent();
<o:p></o:p></p>
<p class=MsoNoSpacing> }<o:p></o:p></p>
<p class=MsoNoSpacing> </script><o:p></o:p></p>
<p class=MsoNoSpacing></body><o:p></o:p></p>
<p class=MsoNoSpacing></html><br>
<br>
<br>
<br>
Pietro Ianniello<br>
<br>
<br>
_______________________________________________ <br>
mapguide-users mailing list <br>
<a href="http://n2.nabble.com/user/SendEmail.jtp?type=node&node=4759356&i=0"
target="_top" rel="nofollow" link="external">[hidden email]</a> <br>
<a href="http://lists.osgeo.org/mailman/listinfo/mapguide-users" target="_top" rel="nofollow" link="external">http://lists.osgeo.org/mailman/listinfo/mapguide-users</a><br>
<br>
<o:p></o:p></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=1 width="100%" noshade style='color:#CCCCCC' align=center>
</div>
<div>
<p class=MsoNormal><span style='font-size:6.5pt;font-family:"Tahoma","sans-serif";
color:#666666'>View message @ <a
href="http://n2.nabble.com/MapGuide-with-Openlayers-Searching-for-Detailed-yet-Simple-Development-Examples-tp4757480p4759356.html" target="_top" rel="nofollow" link="external">http://n2.nabble.com/MapGuide-with-Openlayers-Searching-for-Detailed-yet-Simple-Development-Examples-tp4757480p4759356.html</a>
<br>
To start a new topic under MapGuide Users, email
<a href="http://n2.nabble.com/user/SendEmail.jtp?type=node&node=4759592&i=1" target="_top" rel="nofollow">[hidden email]</a> <br>
To unsubscribe from MapGuide Users, <a target="_top" rel="nofollow" link="external">click
here</a>. <o:p></o:p></span></p>
</div>
<p class=MsoNormal><o:p> </o:p></p>
</div>
<br><hr align="left" width="300">
View this message in context: <a href="http://n2.nabble.com/MapGuide-with-Openlayers-Searching-for-Detailed-yet-Simple-Development-Examples-tp4757480p4759592.html">RE: MapGuide with Openlayers (Searching for Detailed yet Simple Development Examples)</a><br>
Sent from the <a href="http://n2.nabble.com/MapGuide-Users-f1803227.html">MapGuide Users mailing list archive</a> at Nabble.com.<br>