[mapguide-commits] r5851 - in trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb: . Tasks

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Tue May 24 14:35:13 EDT 2011


Author: jng
Date: 2011-05-24 11:35:13 -0700 (Tue, 24 May 2011)
New Revision: 5851

Added:
   trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx
   trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.cs
   trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.designer.cs
Modified:
   trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/SamplesWeb.csproj
   trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/Home.aspx
Log:
#1676: Update the web sample with example for listing IDs of selected features


Modified: trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/SamplesWeb.csproj
===================================================================
--- trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/SamplesWeb.csproj	2011-05-24 17:58:50 UTC (rev 5850)
+++ trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/SamplesWeb.csproj	2011-05-24 18:35:13 UTC (rev 5851)
@@ -85,6 +85,7 @@
     <Content Include="Global.asax" />
     <Content Include="readme.txt" />
     <Content Include="Tasks\AddTracksLayer.aspx" />
+    <Content Include="Tasks\ListSelection.aspx" />
     <Content Include="Tasks\ToggleGroupVisibility.aspx" />
     <Content Include="Tasks\ToggleLayerVisibility.aspx" />
     <Content Include="Tasks\ToggleParcelsLayer.aspx" />
@@ -110,6 +111,13 @@
     <Compile Include="Tasks\AddTracksLayer.aspx.designer.cs">
       <DependentUpon>AddTracksLayer.aspx</DependentUpon>
     </Compile>
+    <Compile Include="Tasks\ListSelection.aspx.cs">
+      <DependentUpon>ListSelection.aspx</DependentUpon>
+      <SubType>ASPXCodeBehind</SubType>
+    </Compile>
+    <Compile Include="Tasks\ListSelection.aspx.designer.cs">
+      <DependentUpon>ListSelection.aspx</DependentUpon>
+    </Compile>
     <Compile Include="Tasks\ToggleGroupVisibility.aspx.cs">
       <DependentUpon>ToggleGroupVisibility.aspx</DependentUpon>
       <SubType>ASPXCodeBehind</SubType>

Modified: trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/Home.aspx
===================================================================
--- trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/Home.aspx	2011-05-24 17:58:50 UTC (rev 5850)
+++ trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/Home.aspx	2011-05-24 18:35:13 UTC (rev 5851)
@@ -7,30 +7,44 @@
     <title>Home</title>
     <script type="text/javascript">
     
-        function Go(url, extraParams)
+        function Go()
         {
             var map = parent.parent.GetMapFrame();
+            var form = parent.parent.GetFormFrame();
             
-            url += "?SESSION=" + map.GetSessionId();
-            url += "&MAPNAME=" + map.GetMapName();
+            var url = arguments[0];
+            var params = new Array();
+            params.push("SESSION");
+            params.push(map.GetSessionId());
+            params.push("MAPNAME");
+            params.push(map.GetMapName());
+            params.push("SELECTION");
+            params.push(encodeURIComponent(map.GetSelectionXML()));
             
-            if (extraParams)
-                url += "&" + extraParams;
+            if (arguments.length > 1)
+            {
+                for (var i = 1; i < arguments.length; i++)
+                {
+                    params.push(arguments[i]);
+                }
+            }
             
-            window.location = url;
+            form.Submit(url, params, "taskPaneFrame"); //The name of the task pane frame
         }
     
     </script>
 </head>
 <body>
+    <form
     <p>At any time, click the <strong>home button</strong> in the task bar to return to this list of samples.</p>
     
     <p>Samples</p>
     <ul>
-        <li><a href="#" onclick="Go('ToggleParcelsLayer.aspx',null)">Add/Remove Parcels Layer</a></li>
-        <li><a href="#" onclick="Go('AddTracksLayer.aspx',null)">Add Tracks Layer</a></li>
-        <li><a href="#" onclick="Go('ToggleGroupVisibility.aspx','GROUPNAME=Base Map')">Toggle "Base Map" Group</a></li>
-        <li><a href="#" onclick="Go('ToggleLayerVisibility.aspx','LAYERNAME=Parcels')">Toggle "Parcels" Layer</a></li>
+        <li><a href="#" onclick="Go('../SamplesWeb/Tasks/ToggleParcelsLayer.aspx')">Add/Remove Parcels Layer</a></li>
+        <li><a href="#" onclick="Go('../SamplesWeb/Tasks/AddTracksLayer.aspx')">Add Tracks Layer</a></li>
+        <li><a href="#" onclick="Go('../SamplesWeb/Tasks/ListSelection.aspx')">List Selected Features</a></li>
+        <li><a href="#" onclick="Go('../SamplesWeb/Tasks/ToggleGroupVisibility.aspx','GROUPNAME','Base Map')">Toggle "Base Map" Group</a></li>
+        <li><a href="#" onclick="Go('../SamplesWeb/Tasks/ToggleLayerVisibility.aspx','LAYERNAME','Parcels')">Toggle "Parcels" Layer</a></li>
     </ul>
 </body>
 </html>

Added: trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx
===================================================================
--- trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx	                        (rev 0)
+++ trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx	2011-05-24 18:35:13 UTC (rev 5851)
@@ -0,0 +1,23 @@
+<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ListSelection.aspx.cs" Inherits="SamplesWeb.Tasks.ListSelection" %>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" >
+<head runat="server">
+    <title>Untitled Page</title>
+</head>
+<body>
+    <form id="form1" runat="server">
+    <div>
+        <asp:Label ID="lblMessage" runat="server"></asp:Label>
+        <br />
+        <a href="Home.aspx">Go back</a>
+        <br />
+        <div id="result" runat="server">
+        </div>
+        <div id="debug" runat="server">
+        </div>
+    </div>
+    </form>
+</body>
+</html>

Added: trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.cs
===================================================================
--- trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.cs	                        (rev 0)
+++ trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.cs	2011-05-24 18:35:13 UTC (rev 5851)
@@ -0,0 +1,75 @@
+using System;
+using System.Collections;
+using System.Configuration;
+using System.Data;
+using System.Web;
+using System.Web.Security;
+using System.Web.UI;
+using System.Web.UI.HtmlControls;
+using System.Web.UI.WebControls;
+using System.Web.UI.WebControls.WebParts;
+using OSGeo.MapGuide.MaestroAPI;
+using OSGeo.MapGuide.MaestroAPI.Services;
+using OSGeo.MapGuide.MaestroAPI.Mapping;
+using System.Text;
+
+namespace SamplesWeb.Tasks
+{
+    public partial class ListSelection : System.Web.UI.Page
+    {
+        protected void Page_Load(object sender, EventArgs e)
+        {
+            string agent = ConfigurationManager.AppSettings["MapAgentUrl"];
+
+            IServerConnection conn = ConnectionProviderRegistry.CreateConnection(
+                "Maestro.Http",
+                "Url", agent,
+                "SessionId", Request.Params["SESSION"]);
+
+            IMappingService mpSvc = (IMappingService)conn.GetService((int)ServiceType.Mapping);
+            string rtMapId = "Session:" + conn.SessionID + "//" + Request.Params["MAPNAME"] + ".Map";
+
+            RuntimeMap rtMap = mpSvc.OpenMap(rtMapId);
+
+            string xml = Request.Params["SELECTION"];
+
+            //The map selection contains one or more layer selections
+            //each containing a one or more sets of identity property values
+            //(because a feature may have multiple identity properties)
+
+            MapSelection selection = new MapSelection(rtMap, HttpUtility.UrlDecode(xml));
+            if (selection.Count > 0)
+            {
+                StringBuilder sb = new StringBuilder();
+                for (int i = 0; i < selection.Count; i++)
+                {
+                    MapSelection.LayerSelection layerSel = selection[i];
+                    sb.Append("<p>Layer: " + layerSel.Layer.Name + "(" + layerSel.Count + ")");
+                    sb.Append("<table>");
+                    
+                    for (int j = 0; j < layerSel.Count; j++)
+                    {
+                        sb.Append("<tr>");
+                        object[] values = layerSel[j];
+                        for (int k = 0; k < values.Length; k++)
+                        {
+                            sb.Append("<td>");
+                            sb.Append(values[k].ToString());
+                            sb.Append("</td>");
+                        }
+                        sb.Append("</tr>");
+                    }
+                    sb.Append("</table>");
+
+                    lblMessage.Text = "Showing IDs of selected features";
+
+                    result.InnerHtml = sb.ToString();
+                }
+            }
+            else
+            {
+                lblMessage.Text = "Nothing selected";
+            }
+        }
+    }
+}

Added: trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.designer.cs
===================================================================
--- trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.designer.cs	                        (rev 0)
+++ trunk/Tools/Maestro/SDK/SamplesWeb/SamplesWeb/Tasks/ListSelection.aspx.designer.cs	2011-05-24 18:35:13 UTC (rev 5851)
@@ -0,0 +1,52 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Runtime Version:2.0.50727.4952
+//
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace SamplesWeb.Tasks {
+    
+    
+    public partial class ListSelection {
+        
+        /// <summary>
+        /// form1 control.
+        /// </summary>
+        /// <remarks>
+        /// Auto-generated field.
+        /// To modify move field declaration from designer file to code-behind file.
+        /// </remarks>
+        protected global::System.Web.UI.HtmlControls.HtmlForm form1;
+        
+        /// <summary>
+        /// lblMessage control.
+        /// </summary>
+        /// <remarks>
+        /// Auto-generated field.
+        /// To modify move field declaration from designer file to code-behind file.
+        /// </remarks>
+        protected global::System.Web.UI.WebControls.Label lblMessage;
+        
+        /// <summary>
+        /// result control.
+        /// </summary>
+        /// <remarks>
+        /// Auto-generated field.
+        /// To modify move field declaration from designer file to code-behind file.
+        /// </remarks>
+        protected global::System.Web.UI.HtmlControls.HtmlGenericControl result;
+        
+        /// <summary>
+        /// debug control.
+        /// </summary>
+        /// <remarks>
+        /// Auto-generated field.
+        /// To modify move field declaration from designer file to code-behind file.
+        /// </remarks>
+        protected global::System.Web.UI.HtmlControls.HtmlGenericControl debug;
+    }
+}



More information about the mapguide-commits mailing list