You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by hu...@apache.org on 2005/06/24 21:52:49 UTC

svn commit: r201672 - in /struts/sandbox/trunk/overdrive/PhoneBook/Web: Forms/ Resources/Command/ Resources/Query/

Author: husted
Date: Fri Jun 24 12:52:48 2005
New Revision: 201672

URL: http://svn.apache.org/viewcvs?rev=201672&view=rev
Log:
OVR-5
* Rework Directory2 to use the IDataGridViewHelper and BaseGridPage. 
* Directory2 now supports inline editing, but uses 1/3 less code than the initial Directory page.

Modified:
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Web.config
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/AppConfig.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/Catalog.xml
    struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Query/SelectAll.xml

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx Fri Jun 24 12:52:48 2005
@@ -54,12 +54,12 @@
 					<AlternatingItemStyle CssClass="AlternatingItemStyle" BackColor="#CCCC99"></AlternatingItemStyle>
 					<EditItemStyle CssClass="EditItemStyle"></EditItemStyle>
 					<Columns>
-						<asp:BoundColumn DataField="last_name" HeaderText="LAST NAME"></asp:BoundColumn>
-						<asp:BoundColumn DataField="first_name" HeaderText="FIRST NAME"></asp:BoundColumn>
-						<asp:BoundColumn DataField="extension" HeaderText="EXTENSION"></asp:BoundColumn>
-						<asp:BoundColumn DataField="user_name" HeaderText="USER"></asp:BoundColumn>
-						<asp:BoundColumn DataField="hired" HeaderText="HIRE DATE"></asp:BoundColumn>
-						<asp:BoundColumn DataField="hours" HeaderText="HOURS"></asp:BoundColumn>
+						<asp:BoundColumn DataField="last_name" HeaderText="Last Name"></asp:BoundColumn>
+						<asp:BoundColumn DataField="first_name" HeaderText="First Name"></asp:BoundColumn>
+						<asp:BoundColumn DataField="extension" HeaderText="Extension"></asp:BoundColumn>
+						<asp:BoundColumn DataField="user_name" HeaderText="User"></asp:BoundColumn>
+						<asp:BoundColumn DataField="hired" HeaderText="Hire Date"></asp:BoundColumn>
+						<asp:BoundColumn DataField="hours" HeaderText="Hours"></asp:BoundColumn>
 					</Columns>
             	</asp:DataGrid>
         		<p><asp:Button ID="cmdAdd" Runat="server"></asp:Button></p>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory.aspx.cs Fri Jun 24 12:52:48 2005
@@ -40,24 +40,24 @@
 
 		#region Helpers
 
-		private IViewHelper _ViewHelper;
+		private IViewHelper _FindHelper;
 		/// <summary>
 		/// Obtain dynamic data for the default view.
 		/// </summary>
 		///
-		public virtual IViewHelper ViewHelper
-		{
-			get { return _ViewHelper; }
-			set { _ViewHelper = value; }
-		}
-
-		private IViewHelper _FindHelper;
 		public virtual IViewHelper FindHelper
 		{
 			get { return _FindHelper; }
 			set { _FindHelper = value; }
 		}
 
+		private IViewHelper _ListHelper;
+		public virtual IViewHelper ListHelper
+		{
+			get { return _ListHelper; }
+			set { _ListHelper = value; }
+		}
+
 		#endregion
 
 		#region Find
@@ -107,16 +107,16 @@
 		{
 			DropDownList list = sender as DropDownList;
 			string id = list.ID;
-			int v = id.LastIndexOf (FindHelper.ListSuffix);
+			int v = id.LastIndexOf (ListHelper.ListSuffix);
 			string key = id.Substring (0, v);
-			FindHelper.Criteria [key] = list.SelectedValue;
+			ListHelper.Criteria [key] = list.SelectedValue;
 			Filter_Reset (list);
-			List_Load (FindHelper);
+			List_Load (ListHelper);
 		}
 
 		private void Find_Load ()
 		{
-			IViewHelper h = ViewHelper;
+			IViewHelper h = FindHelper;
 			h.ExecuteBind (pnlFind.Controls);
 			bool ok = (h.IsNominal);
 			if (!ok)
@@ -128,7 +128,7 @@
 		private void ListAll_Click (object sender, EventArgs e)
 		{
 			Filter_Reset (null);
-			List_Load (FindHelper);
+			List_Load (ListHelper);
 		}
 
 		#endregion
@@ -199,7 +199,7 @@
 			if (!IsPostBack)
 			{
 				Find_Load ();
-				List_Load (FindHelper);
+				List_Load (ListHelper);
 			}
 		}
 

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx Fri Jun 24 12:52:48 2005
@@ -33,7 +33,7 @@
 			  <td>Last Name</td>
 			  <td>First Name</td>
 			  <td>Extension</td>
-			  <td>User</td>
+			  <td>User ID</td>
 			  <td>Hire Date</td>
 			  <td>Hours</td>			  
 			  </tr><tr>
@@ -54,7 +54,7 @@
 					<AlternatingItemStyle CssClass="AlternatingItemStyle" BackColor="#CCCC99"></AlternatingItemStyle>
 					<EditItemStyle CssClass="EditItemStyle"></EditItemStyle>
             	</asp:DataGrid>
-        		<p><asp:Button ID="cmdAdd" Runat="server"></asp:Button></p>
+        		<p><asp:Button ID="cmdListAdd" Runat="server"></asp:Button></p>
 			</asp:Panel>
 
 		</form>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Directory2.aspx.cs Fri Jun 24 12:52:48 2005
@@ -1,5 +1,4 @@
 using System;
-using System.Collections;
 using System.Web.UI.WebControls;
 using Nexus.Core.Helpers;
 using Nexus.Web;
@@ -15,7 +14,6 @@
 
 		#region Messages
 
-		private const string msg_ADD_CMD = "ADD NEW";
 		private const string msg_LIST_ALL_CMD = "SHOW ALL";
 
 		#endregion
@@ -39,29 +37,7 @@
 
 		#endregion
 
-		#region Helpers
-
-		private IViewHelper _ViewHelper;
-		/// <summary>
-		/// Obtain dynamic data for the default view.
-		/// </summary>
-		///
-		public virtual IViewHelper ViewHelper
-		{
-			get { return _ViewHelper; }
-			set { _ViewHelper = value; }
-		}
-
-		private IViewHelper _FindHelper;
-		public virtual IViewHelper FindHelper
-		{
-			get { return _FindHelper; }
-			set { _FindHelper = value; }
-		}
-
-		#endregion
-
-		#region Find
+		#region Find -- Display Find controls
 
 		protected Panel pnlFind;
 		protected DropDownList last_name_list;
@@ -81,7 +57,13 @@
 			return lists;
 		}
 
-		private void Find_Init ()
+		private void ListAll_Click (object sender, EventArgs e)
+		{
+			Filter_Reset (null);
+			List_Load ();
+		}
+
+		protected override void Find_Init ()
 		{
 			cmdListAll.Text = msg_LIST_ALL_CMD;
 			cmdListAll.Click += new EventHandler (ListAll_Click);
@@ -89,7 +71,7 @@
 			foreach (DropDownList filter in FilterList ())
 			{
 				filter.AutoPostBack = true;
-				filter.SelectedIndexChanged += new EventHandler (Filter_Changed);
+				filter.SelectedIndexChanged += new EventHandler (Find_Submit);
 			}
 		}
 
@@ -104,104 +86,35 @@
 			if (except != null) except.SelectedIndex = exceptIndex;
 		}
 
-		private void Filter_Changed (object sender, EventArgs e)
+		protected override void Find_Submit (object sender, EventArgs e)
 		{
 			DropDownList list = sender as DropDownList;
 			string id = list.ID;
-			int v = id.LastIndexOf (FindHelper.ListSuffix);
+			int v = id.LastIndexOf (GridHelper.FindHelper.ListSuffix);
 			string key = id.Substring (0, v);
-			FindHelper.Criteria [key] = list.SelectedValue;
+			GridHelper.FindHelper.Criteria [key] = list.SelectedValue;
 			Filter_Reset (list);
-			List_Load (FindHelper);
+			List_Load ();
 		}
 
-		private void Find_Load ()
+		protected override void Find_Load ()
 		{
-			IViewHelper h = ViewHelper;
+			IViewHelper h = GridHelper.FindHelper;
 			h.ExecuteBind (pnlFind.Controls);
 			bool ok = (h.IsNominal);
 			if (!ok)
 				Page_Error = h;
 		}
 
-		// postback events - These events respond to user input (to controls displayed by pageload methods)
-
-		private void ListAll_Click (object sender, EventArgs e)
-		{
-			Filter_Reset (null);
-			List_Load (FindHelper);
-		}
-
-		#endregion
-
-		#region List
-
-		protected Panel pnlList;
-		protected DataGrid repList;
-		protected Button cmdAdd;
-
-		// pageload events
-
-		private void List_Init ()
-		{
-			this.cmdAdd.Text = msg_ADD_CMD;
-			this.cmdAdd.Visible = false; // TODO: True if user is editor
-		}
-
-		private void List_Load (IViewHelper helper)
-		{
-			helper.Execute ();
-			bool ok = helper.IsNominal;
-			if (!ok) Page_Error = helper;
-			else
-			{
-				IList result = helper.Outcome;
-				repList.DataSource = result;
-				repList.DataBind ();
-			}
-		}
-
-		// postback events 
-
-		protected void List_ItemCommand (object source, DataGridCommandEventArgs e)
-		{
-			bool okay = false;
-			switch (e.CommandName)
-			{
-				case "Page":
-					// Handled by List_PageIndexChanged
-					break;
-				default:
-					throw new NotImplementedException ();
-			}
-
-			if (okay) pnlList.Visible = false;
-		}
-
-		protected void List_PageIndexChanged (object sender, DataGridPageChangedEventArgs e)
-		{
-			repList.CurrentPageIndex = e.NewPageIndex;
-			repList.DataBind ();
-		}
-
 		#endregion
 
 		#region Page Events
 
-		protected void Page_Init ()
+		protected override void Page_Init ()
 		{
+			base.Page_Init ();
+			pnlList.Visible = true;
 			pnlError.Visible = false;
-			Find_Init ();
-			List_Init ();
-		}
-
-		protected void Page_Load (object sender, EventArgs e)
-		{
-			if (!IsPostBack)
-			{
-				Find_Load ();
-				List_Load (FindHelper);
-			}
 		}
 
 		#endregion

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Web.config
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Web.config?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Web.config (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Forms/Web.config Fri Jun 24 12:52:48 2005
@@ -16,15 +16,12 @@
     <objects xmlns="http://www.springframework.net">
     
 		<object id="Directory" type="Directory.aspx">
-			<property name="ViewHelper"><ref object="directory_view_helper"/></property>		
 			<property name="FindHelper"><ref object="directory_find_helper"/></property>		
+			<property name="ListHelper"><ref object="directory_list_helper"/></property>		
 		</object>
               
 		<object id="Directory2" type="Directory2.aspx">
-			<property name="Helper"><ref object="directory_grid_helper"/></property>
-		
-			<property name="ViewHelper"><ref object="directory_view_helper"/></property>		
-			<property name="FindHelper"><ref object="directory_find_helper"/></property>		
+			<property name="GridHelper"><ref object="directory_grid_helper"/></property>
 		</object>
 
    </objects>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/AppConfig.xml
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/AppConfig.xml?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/AppConfig.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/AppConfig.xml Fri Jun 24 12:52:48 2005
@@ -42,7 +42,7 @@
 
 	<object id="user_name" parent="BaseFieldContext">
 		<property name="ID"><value>user_name</value></property>	
-		<property name="Label"><value>UserName</value></property>	
+		<property name="Label"><value>User ID</value></property>	
 	</object>
 	
 	<object id="extension" parent="BaseFieldContext">

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/Catalog.xml
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/Catalog.xml?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/Catalog.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Command/Catalog.xml Fri Jun 24 12:52:48 2005
@@ -75,13 +75,13 @@
 		
   <!-- directory1 helpers -->
 
-  <object id="directory_view_helper" parent="BaseHelper" singleton="false">
+  <object id="directory_find_helper" parent="BaseHelper" singleton="false">
 		<property name="Command">
 			<ref object="directory_view" />
 		</property>
   </object>
 
-  <object id="directory_find_helper" parent="BaseHelper" singleton="false">
+  <object id="directory_list_helper" parent="BaseHelper" singleton="false">
 		<property name="Command">
 			<ref object="filter" />
 		</property>
@@ -96,8 +96,11 @@
 	</object>
 
   <object id="directory_grid_helper" parent="BaseGridHelper" singleton="false">
+   		<property name="FindHelper">
+   			<ref object="directory_find_helper"/>
+   		</property>		
 		<property name="ListHelper">
-			<ref object="directory_find_helper" />
+			<ref object="directory_list_helper" />
 		</property>
 		<property name="SaveHelper">
 			<ref object="entry_save_helper" />
@@ -152,7 +155,6 @@
 				<value>user_name</value>
 				<value>hours</value>
 				<value>hired</value>
-				<value>editor</value>
 			</list>
 		</property>
 	</object>

Modified: struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Query/SelectAll.xml
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Query/SelectAll.xml?rev=201672&r1=201671&r2=201672&view=diff
==============================================================================
--- struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Query/SelectAll.xml (original)
+++ struts/sandbox/trunk/overdrive/PhoneBook/Web/Resources/Query/SelectAll.xml Fri Jun 24 12:52:48 2005
@@ -14,7 +14,6 @@
 			<parameter property="user_name"/>
 			<parameter property="hired"/>
 			<parameter property="hours"/>
-			<parameter property="editor"/>
    			<parameter property="entry_key"/>   		
         </parameterMap>    		
   	
@@ -23,14 +22,13 @@
 	<statements>
 		<select id="filter" paramClass="Hashtable" resultClass="Hashtable">
 			SELECT 
-				pk_entry AS entry_key,
 				last_name,
 				first_name,
 				extension,
 				user_name,
 				hired,
 				hours,
-				editor
+				pk_entry AS entry_key				
 			FROM entry
 			<dynamic prepend="WHERE">			
 				<isNotNull property="last_name" prepend="AND">
@@ -51,6 +49,9 @@
 				<isNotNull property="hours" prepend="AND">
 					hours=#hours#
 				</isNotNull>
+				<isNotNull property="entry_key" prepend="AND">
+					pk_entry=#entry_key#
+				</isNotNull>
 			</dynamic>			
 		</select>
 
@@ -62,10 +63,9 @@
 				user_name,
 				hired,
 				hours,
-				editor,
 				pk_entry
 				)
-			VALUES (?,?,?,?, ?,?,?,?)
+			VALUES (?,?,?,?, ?,?,?)
 		</insert>		
 
 		<update id="entry_update" parameterMap="entry_save_param">
@@ -75,8 +75,7 @@
 				extension=?,
 				user_name=?,
 				hired=?,
-				hours=?,
-				editor=?
+				hours=?
 			WHERE 
 				pk_entry=?
 		</update>



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org