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: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]