ItEr17S10CUCreacionProxectoPlanificacionItEr16S12: ListDetails renamed to LeftTasksTree and TaskDetail renamed to LeftTasksTreeRow.

This commit is contained in:
Óscar González Fernández 2009-07-20 15:37:39 +02:00 committed by Javier Moran Rua
parent 5a7c6686d2
commit 0c459b2502
6 changed files with 45 additions and 44 deletions

View file

@ -12,7 +12,7 @@ import java.util.Set;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.zkoss.ganttz.TaskDetail.ITaskDetailNavigator; import org.zkoss.ganttz.LeftTasksTreeRow.ILeftTasksTreeNavigator;
import org.zkoss.ganttz.util.MutableTreeModel; import org.zkoss.ganttz.util.MutableTreeModel;
import org.zkoss.ganttz.util.TaskBean; import org.zkoss.ganttz.util.TaskBean;
import org.zkoss.ganttz.util.TaskContainerBean; import org.zkoss.ganttz.util.TaskContainerBean;
@ -29,7 +29,7 @@ import org.zkoss.zul.Treecell;
import org.zkoss.zul.Treeitem; import org.zkoss.zul.Treeitem;
import org.zkoss.zul.TreeitemRenderer; import org.zkoss.zul.TreeitemRenderer;
public class ListDetails extends HtmlMacroComponent { public class LeftTasksTree extends HtmlMacroComponent {
private final class TaskBeanRenderer implements TreeitemRenderer { private final class TaskBeanRenderer implements TreeitemRenderer {
public void render(Treeitem item, Object data) throws Exception { public void render(Treeitem item, Object data) throws Exception {
@ -38,21 +38,21 @@ public class ListDetails extends HtmlMacroComponent {
final int[] path = tasksTreeModel.getPath(tasksTreeModel.getRoot(), final int[] path = tasksTreeModel.getPath(tasksTreeModel.getRoot(),
taskBean); taskBean);
String cssClass = "depth_" + path.length; String cssClass = "depth_" + path.length;
TaskDetail taskDetail = TaskDetail.create(taskBean, LeftTasksTreeRow leftTasksTreeRow = LeftTasksTreeRow.create(taskBean,
new TreeNavigator(tasksTreeModel, taskBean)); new TreeNavigator(tasksTreeModel, taskBean));
if (taskBean.isContainer()) { if (taskBean.isContainer()) {
expandWhenOpened((TaskContainerBean) taskBean, item); expandWhenOpened((TaskContainerBean) taskBean, item);
} }
Component row = Executions.getCurrent().createComponents( Component row = Executions.getCurrent().createComponents(
"~./ganttz/zul/taskdetail.zul", item, null); "~./ganttz/zul/leftTasksTreeRow.zul", item, null);
taskDetail.doAfterCompose(row); leftTasksTreeRow.doAfterCompose(row);
List<Object> rowChildren = row.getChildren(); List<Object> rowChildren = row.getChildren();
List<Treecell> treeCells = Planner.findComponentsOfType( List<Treecell> treeCells = Planner.findComponentsOfType(
Treecell.class, rowChildren); Treecell.class, rowChildren);
for (Treecell cell : treeCells) { for (Treecell cell : treeCells) {
cell.setSclass(cssClass); cell.setSclass(cssClass);
} }
detailsForBeans.put(taskBean, taskDetail); detailsForBeans.put(taskBean, leftTasksTreeRow);
} }
private void expandWhenOpened(final TaskContainerBean taskBean, private void expandWhenOpened(final TaskContainerBean taskBean,
@ -73,15 +73,15 @@ public class ListDetails extends HtmlMacroComponent {
} }
private final class DetailsForBeans { private final class DetailsForBeans {
private Map<TaskBean, TaskDetail> map = new HashMap<TaskBean, TaskDetail>(); private Map<TaskBean, LeftTasksTreeRow> map = new HashMap<TaskBean, LeftTasksTreeRow>();
private Set<TaskBean> focusRequested = new HashSet<TaskBean>(); private Set<TaskBean> focusRequested = new HashSet<TaskBean>();
public void put(TaskBean taskBean, TaskDetail taskDetail) { public void put(TaskBean taskBean, LeftTasksTreeRow leftTasksTreeRow) {
map.put(taskBean, taskDetail); map.put(taskBean, leftTasksTreeRow);
if (focusRequested.contains(taskBean)) { if (focusRequested.contains(taskBean)) {
focusRequested.remove(taskBean); focusRequested.remove(taskBean);
taskDetail.receiveFocus(); leftTasksTreeRow.receiveFocus();
} }
} }
@ -89,7 +89,7 @@ public class ListDetails extends HtmlMacroComponent {
focusRequested.add(taskBean); focusRequested.add(taskBean);
} }
public TaskDetail get(TaskBean taskbean) { public LeftTasksTreeRow get(TaskBean taskbean) {
return map.get(taskbean); return map.get(taskbean);
} }
@ -97,7 +97,7 @@ public class ListDetails extends HtmlMacroComponent {
private DetailsForBeans detailsForBeans = new DetailsForBeans(); private DetailsForBeans detailsForBeans = new DetailsForBeans();
private final class TreeNavigator implements ITaskDetailNavigator { private final class TreeNavigator implements ILeftTasksTreeNavigator {
private final int[] pathToNode; private final int[] pathToNode;
private final TaskBean task; private final TaskBean task;
@ -108,7 +108,7 @@ public class ListDetails extends HtmlMacroComponent {
} }
@Override @Override
public TaskDetail getAboveDetail() { public LeftTasksTreeRow getAboveRow() {
TaskBean parent = getParent(pathToNode); TaskBean parent = getParent(pathToNode);
int lastPosition = pathToNode[pathToNode.length - 1]; int lastPosition = pathToNode[pathToNode.length - 1];
if (lastPosition != 0) { if (lastPosition != 0) {
@ -119,17 +119,17 @@ public class ListDetails extends HtmlMacroComponent {
return null; return null;
} }
private TaskDetail getChild(TaskBean parent, int position) { private LeftTasksTreeRow getChild(TaskBean parent, int position) {
TaskBean child = tasksTreeModel.getChild(parent, position); TaskBean child = tasksTreeModel.getChild(parent, position);
return getDetailFor(child); return getDetailFor(child);
} }
private TaskDetail getDetailFor(TaskBean child) { private LeftTasksTreeRow getDetailFor(TaskBean child) {
return detailsForBeans.get(child); return detailsForBeans.get(child);
} }
@Override @Override
public TaskDetail getBelowDetail() { public LeftTasksTreeRow getBelowRow() {
if (isExpanded() && hasChildren()) { if (isExpanded() && hasChildren()) {
return getChild(task, 0); return getChild(task, 0);
} }
@ -208,7 +208,7 @@ public class ListDetails extends HtmlMacroComponent {
} }
private static Log LOG = LogFactory.getLog(ListDetails.class); private static Log LOG = LogFactory.getLog(LeftTasksTree.class);
private TaskRemovedListener taskRemovedListener; private TaskRemovedListener taskRemovedListener;
@ -218,7 +218,7 @@ public class ListDetails extends HtmlMacroComponent {
private Tree tasksTree; private Tree tasksTree;
public ListDetails(List<TaskBean> taskBeans) { public LeftTasksTree(List<TaskBean> taskBeans) {
this.taskBeans = taskBeans; this.taskBeans = taskBeans;
} }

View file

@ -21,15 +21,15 @@ import org.zkoss.zul.Textbox;
import org.zkoss.zul.Treecell; import org.zkoss.zul.Treecell;
import org.zkoss.zul.api.Treerow; import org.zkoss.zul.api.Treerow;
public class TaskDetail extends GenericForwardComposer { public class LeftTasksTreeRow extends GenericForwardComposer {
public interface ITaskDetailNavigator { public interface ILeftTasksTreeNavigator {
TaskDetail getBelowDetail(); LeftTasksTreeRow getBelowRow();
TaskDetail getAboveDetail(); LeftTasksTreeRow getAboveRow();
} }
private static final Log LOG = LogFactory.getLog(TaskDetail.class); private static final Log LOG = LogFactory.getLog(LeftTasksTreeRow.class);
private final TaskBean taskBean; private final TaskBean taskBean;
@ -45,18 +45,18 @@ public class TaskDetail extends GenericForwardComposer {
private DateFormat dateFormat; private DateFormat dateFormat;
private final ITaskDetailNavigator taskDetailNavigator; private final ILeftTasksTreeNavigator leftTasksTreeNavigator;
public static TaskDetail create(TaskBean bean, public static LeftTasksTreeRow create(TaskBean bean,
ITaskDetailNavigator taskDetailnavigator) { ILeftTasksTreeNavigator taskDetailnavigator) {
return new TaskDetail(bean, taskDetailnavigator); return new LeftTasksTreeRow(bean, taskDetailnavigator);
} }
private TaskDetail(TaskBean task, ITaskDetailNavigator taskDetailNavigator) { private LeftTasksTreeRow(TaskBean task, ILeftTasksTreeNavigator leftTasksTreeNavigator) {
this.taskBean = task; this.taskBean = task;
this.dateFormat = DateFormat.getDateInstance(DateFormat.SHORT, Locales this.dateFormat = DateFormat.getDateInstance(DateFormat.SHORT, Locales
.getCurrent()); .getCurrent());
this.taskDetailNavigator = taskDetailNavigator; this.leftTasksTreeNavigator = leftTasksTreeNavigator;
} }
public TaskBean getTaskBean() { public TaskBean getTaskBean() {
@ -124,7 +124,7 @@ public class TaskDetail extends GenericForwardComposer {
} }
public void focusGoUp(int position) { public void focusGoUp(int position) {
TaskDetail aboveDetail = taskDetailNavigator.getAboveDetail(); LeftTasksTreeRow aboveDetail = leftTasksTreeNavigator.getAboveRow();
if (aboveDetail != null) { if (aboveDetail != null) {
aboveDetail.receiveFocus(position); aboveDetail.receiveFocus(position);
} }
@ -139,21 +139,21 @@ public class TaskDetail extends GenericForwardComposer {
} }
public void focusGoDown(int position) { public void focusGoDown(int position) {
TaskDetail belowDetail = taskDetailNavigator.getBelowDetail(); LeftTasksTreeRow belowDetail = leftTasksTreeNavigator.getBelowRow();
if (belowDetail != null) { if (belowDetail != null) {
belowDetail.receiveFocus(position); belowDetail.receiveFocus(position);
} else { } else {
ListDetails listDetails = getListDetails(); LeftTasksTree listDetails = getListDetails();
listDetails.addTask(); listDetails.addTask();
} }
} }
private ListDetails getListDetails() { private LeftTasksTree getListDetails() {
Component current = nameBox; Component current = nameBox;
while (!(current instanceof ListDetails)) { while (!(current instanceof LeftTasksTree)) {
current = current.getParent(); current = current.getParent();
} }
return (ListDetails) current; return (LeftTasksTree) current;
} }
public void userWantsToMove(Textbox textbox, KeyEvent keyEvent) { public void userWantsToMove(Textbox textbox, KeyEvent keyEvent) {

View file

@ -30,7 +30,7 @@ public class Planner extends XulElement {
private GanttDiagramGraph diagramGraph = new GanttDiagramGraph(); private GanttDiagramGraph diagramGraph = new GanttDiagramGraph();
private DependencyRemovedListener dependencyRemovedListener; private DependencyRemovedListener dependencyRemovedListener;
private TaskRemovedListener taskRemovedListener; private TaskRemovedListener taskRemovedListener;
private ListDetails listDetails; private LeftTasksTree leftTasksTree;
private GanttPanel ganttPanel; private GanttPanel ganttPanel;
@ -93,7 +93,7 @@ public class Planner extends XulElement {
private void removePreviousDetails() { private void removePreviousDetails() {
List<Object> children = getChildren(); List<Object> children = getChildren();
for (ListDetails l : Planner.findComponentsOfType(ListDetails.class, for (LeftTasksTree l : Planner.findComponentsOfType(LeftTasksTree.class,
children)) { children)) {
removeChild(l); removeChild(l);
} }
@ -127,7 +127,7 @@ public class Planner extends XulElement {
@Override @Override
public void taskRemoved(Task taskRemoved) { public void taskRemoved(Task taskRemoved) {
diagramGraph.remove(taskRemoved.getTaskBean()); diagramGraph.remove(taskRemoved.getTaskBean());
listDetails.taskRemoved(taskRemoved.getTaskBean()); leftTasksTree.taskRemoved(taskRemoved.getTaskBean());
TaskList taskList = getTaskList(); TaskList taskList = getTaskList();
setHeight(getHeight());// forcing smart update setHeight(getHeight());// forcing smart update
taskList.adjustZoomColumnsHeight(); taskList.adjustZoomColumnsHeight();
@ -269,11 +269,12 @@ public class Planner extends XulElement {
private void recreate() { private void recreate() {
removePreviousDetails(); removePreviousDetails();
this.listDetails = new ListDetails(this.diagramGraph.getTopLevelTasks()); this.leftTasksTree = new LeftTasksTree(this.diagramGraph
insertBefore(this.listDetails, .getTopLevelTasks());
insertBefore(this.leftTasksTree,
(Component) (getChildren().isEmpty() ? null : getChildren() (Component) (getChildren().isEmpty() ? null : getChildren()
.get(0))); .get(0)));
this.listDetails.afterCompose(); this.leftTasksTree.afterCompose();
removePreviousGanntPanel(); removePreviousGanntPanel();
this.ganttPanel = new GanttPanel(this.diagramGraph, this.ganttPanel = new GanttPanel(this.diagramGraph,
taskEditFormComposer); taskEditFormComposer);

View file

@ -21,9 +21,9 @@
</component> </component>
<component> <component>
<component-name>listdetails</component-name> <component-name>leftTasksTree</component-name>
<component-class>org.zkoss.ganttz.ListDetails</component-class> <component-class>org.zkoss.ganttz.LeftTasksTree</component-class>
<macro-uri>~./ganttz/zul/listdetails.zul</macro-uri> <macro-uri>~./ganttz/zul/leftTasksTree.zul</macro-uri>
</component> </component>
<component> <component>