From ed468f3fb2dcd24d1a0fde422a296ea729c8563f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lorenzo=20Tilve=20=C3=81lvaro?= Date: Thu, 28 Jun 2012 17:28:10 +0200 Subject: [PATCH] Made project and task columns Frozen on monthly timesheet This provides horizontal scroll functionality and allows task description to be permanently visible. It would be interesting to move totals column as a third frozen column. FEA: ItEr76S28UserDashboard --- .../dashboard/MonthlyTimesheetController.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java index 6a9dae135..30fcc14a7 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java @@ -49,11 +49,13 @@ import org.springframework.util.Assert; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.WrongValueException; +import org.zkoss.zk.ui.util.Clients; import org.zkoss.zk.ui.util.GenericForwardComposer; import org.zkoss.zul.Button; import org.zkoss.zul.Cell; import org.zkoss.zul.Column; import org.zkoss.zul.Columns; +import org.zkoss.zul.Frozen; import org.zkoss.zul.Image; import org.zkoss.zul.Label; import org.zkoss.zul.Row; @@ -475,6 +477,17 @@ public class MonthlyTimesheetController extends GenericForwardComposer URLHandlerRegistry.getRedirectorFor(IMonthlyTimesheetController.class) .register(this, page); + Frozen frozen = new Frozen(); + frozen.setColumns(2); + timesheet.appendChild(frozen); + + adjustFrozenWidth(); + + } + + private void adjustFrozenWidth() { + // Hack to reduce frozen scrollarea + Clients.evalJavaScript("jq('.z-frozen-inner div').width(jq('.total-row').offset().left);"); } private void checkUserComesFromEntryPointsOrSendForbiddenCode() { @@ -640,6 +653,7 @@ public class MonthlyTimesheetController extends GenericForwardComposer monthlyTimesheetModel.addOrderElement(orderElement); orderElementBandboxSearch.setSelectedElement(null); Util.reloadBindings(timesheet); + adjustFrozenWidth(); } }