From 1ec4d83e95803b7748a548dfa1c84c233f4232e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lorenzo=20Tilve=20=C3=81lvaro?= Date: Mon, 31 Dec 2012 13:28:36 +0100 Subject: [PATCH] Bug 1383: Fixed corner case of deadline and current day right position The background position of the current day and deadline was outside the visible area in the timetracker watermark columns when it was on the last day of the interval. A better alignment with the tasks layer (reducing the 3px max deviation) on this cases can be achieved by revamping how lines and borders are represented on the watermark layer. FEA: ItEr76S04BugFixing --- .../org/zkoss/ganttz/timetracker/zoom/DetailItem.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/timetracker/zoom/DetailItem.java b/ganttzk/src/main/java/org/zkoss/ganttz/timetracker/zoom/DetailItem.java index 281f574eb..99504b9d4 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/timetracker/zoom/DetailItem.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/timetracker/zoom/DetailItem.java @@ -102,7 +102,8 @@ public final class DetailItem { new DateTime()).getDays()) + (float) 0.5) / ((float) Days .daysBetween(this.startDate, this.endDate).getDays())) * this.size); - this.markCurrentDay(offsetInPx); + // 1px per column side, 1px for right border and 1px own bg-width + this.markCurrentDay(Math.min(this.size - 4, offsetInPx)); } } @@ -113,7 +114,7 @@ public final class DetailItem { this.startDate, projectStart).getDays()) / ((float) Days .daysBetween(this.startDate, this.endDate).getDays())) * this.size); - this.markprojectStart(Math.min(this.size - 1, offsetInPx)); + this.markprojectStart(offsetInPx); } } @@ -123,8 +124,8 @@ public final class DetailItem { this.startDate, deadline).getDays()) / ((float) Days .daysBetween(this.startDate, this.endDate).getDays())) * this.size); - // Management of left border case for current line format - this.markDeadlineDay(Math.min(this.size - 1, offsetInPx)); + // 1px per column side, 1px for right border and 1px own bg-width + this.markDeadlineDay(Math.min(this.size - 4, offsetInPx)); } }