From 9f7024b9d8e44d8dc99d529f0bc6acca1b9f8dfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Mon, 29 Jun 2009 14:36:11 +0200 Subject: [PATCH] ItEr14S13RFComportamentoGraficoPlanificador: When a task is added the task name receives focus and the viewport scrolls to show it. --- .../src/main/java/org/zkoss/ganttz/ListDetails.java | 6 ++++-- .../src/main/java/org/zkoss/ganttz/TaskDetail.java | 12 ++++++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java index 7df7bc714..9b50b14e8 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java @@ -50,7 +50,8 @@ public class ListDetails extends HtmlMacroComponent { newTask.setName("Nova Tarefa"); newTask.setBeginDate(new Date()); newTask.setEndDate(threeMonthsLater(newTask.getBeginDate())); - addTask(newTask); + TaskDetail newDetail = addTask(newTask); + newDetail.receiveFocus(); getPlanner().addTask(newTask); } @@ -69,10 +70,11 @@ public class ListDetails extends HtmlMacroComponent { } } - private void addTask(TaskBean taskBean) { + private TaskDetail addTask(TaskBean taskBean) { TaskDetail taskDetail = TaskDetail.create(taskBean); appendChild(taskDetail); taskDetail.afterCompose(); + return taskDetail; } } diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskDetail.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskDetail.java index ef83a10c2..be14e0c3b 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskDetail.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskDetail.java @@ -133,14 +133,22 @@ public class TaskDetail extends HtmlMacroComponent implements AfterCompose { public void focusGoUp(int position) { TaskDetail aboveDetail = getAboveDetail(); if (aboveDetail != null) { - aboveDetail.getTextBoxes()[position].focus(); + aboveDetail.receiveFocus(position); } } + public void receiveFocus() { + receiveFocus(0); + } + + public void receiveFocus(int position) { + this.getTextBoxes()[position].focus(); + } + public void focusGoDown(int position) { TaskDetail belowDetail = getBelowDetail(); if (belowDetail != null) { - belowDetail.getTextBoxes()[position].focus(); + belowDetail.receiveFocus(position); } }