From 1d95d90c2e5c5d8c30ef212df0041a30c0acabc6 Mon Sep 17 00:00:00 2001 From: Susana Montes Pedreira Date: Thu, 29 Mar 2012 13:34:23 +0100 Subject: [PATCH] make the list sortable by default by state,but using alphabetic sort, but the first tasks will be the pending tasks. FEA: ItEr75S32AnA15S04UpdateDeliveringDateInSubcontracting --- .../SubcontractedTasksController.java | 28 ++++++++++++++++++- .../webapp/subcontract/subcontractedTasks.zul | 9 +++--- 2 files changed, 32 insertions(+), 5 deletions(-) diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/subcontract/SubcontractedTasksController.java b/libreplan-webapp/src/main/java/org/libreplan/web/subcontract/SubcontractedTasksController.java index 3face18da..cd5c18c93 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/subcontract/SubcontractedTasksController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/subcontract/SubcontractedTasksController.java @@ -54,8 +54,11 @@ import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.Events; import org.zkoss.zk.ui.util.GenericForwardComposer; import org.zkoss.zul.Button; +import org.zkoss.zul.Column; +import org.zkoss.zul.Grid; import org.zkoss.zul.Hbox; import org.zkoss.zul.Label; +import org.zkoss.zul.ListModelExt; import org.zkoss.zul.Row; import org.zkoss.zul.RowRenderer; import org.zkoss.zul.api.Window; @@ -71,6 +74,10 @@ public class SubcontractedTasksController extends GenericForwardComposer { private Window window; + private Column columnBySort; + + private Grid listing; + private Component messagesContainer; private IMessagesForUser messagesForUser; @@ -213,7 +220,7 @@ public class SubcontractedTasksController extends GenericForwardComposer { } catch (ValidationException e) { messagesForUser.showInvalidValues(e); } - Util.reloadBindings(window); + reload(); } }); @@ -225,4 +232,23 @@ public class SubcontractedTasksController extends GenericForwardComposer { } + public void reload() { + Util.reloadBindings(window); + forceSortGridSatisfaction(); + } + + public void forceSortGridSatisfaction() { + Column column = (Column) columnBySort; + ListModelExt model = (ListModelExt) listing.getModel(); + if ("ascending".equals(column.getSortDirection())) { + model.sort(column.getSortAscending(), true); + } + if ("descending".equals(column.getSortDirection())) { + model.sort(column.getSortDescending(), false); + } + } + + public void initRender() { + forceSortGridSatisfaction(); + } } diff --git a/libreplan-webapp/src/main/webapp/subcontract/subcontractedTasks.zul b/libreplan-webapp/src/main/webapp/subcontract/subcontractedTasks.zul index 3bcb1cae6..ace0ba7de 100644 --- a/libreplan-webapp/src/main/webapp/subcontract/subcontractedTasks.zul +++ b/libreplan-webapp/src/main/webapp/subcontract/subcontractedTasks.zul @@ -38,10 +38,11 @@ + mold="paging" pageSize="10" fixedLayout="true" + onInitRender="controller.initRender();"> + tooltiptext="${i18n:_('Subcontracting date')}" sort="auto(subcontratationDate)" width="150px"/> @@ -50,8 +51,8 @@ - - + +