⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gantttreetablemodel.java

📁 It is all about project scheduling. GanttProject is a tool for creating a project schedule by means
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        case 1:            Task task = (Task) tn.getUserObject();            String path = (task.getPriority() == 0 ? "/icons/task1.gif" : task                    .getPriority() == 1 ? "/icons/task.gif"                    : "/icons/task2.gif");            res = new ImageIcon(getClass().getResource(path));            break;        case 2: // info            TaskInfo info = t.getTaskInfo();            if (info != null) {                if (info instanceof Delay) {                    int type = ((Delay) info).getType();                    if (type == Delay.NORMAL)                        res = new ImageIcon(getClass().getResource(                                "/icons/alert1_16.gif"));                    else if (type == Delay.CRITICAL)                        res = new ImageIcon(getClass().getResource(                                "/icons/alert2_16.gif"));                }            }            break;        case 3:            res = tn.getName();            break;        case 4:            res = tn.getStart();            break;        case 5:            res = tn.getEnd();            break;        case 6:            res = new Integer(tn.getDuration());            break;        case 7:            res = new Integer(tn.getCompletionPercentage());            break;        case 8: {            ResourceAssignment[] tAssign = t.getAssignments();            StringBuffer sb = new StringBuffer();            int nb = 0;            for (int i = 0; i < tAssign.length; i++) {                ResourceAssignment resAss = tAssign[i];                if (resAss.isCoordinator())                    sb.append(nb++ == 0 ? "" : ", ").append(                            resAss.getResource().getName());            }            // res = "Not implemented";            res = sb.toString();            break;        }        case 9: {            String resStr = "";            TaskDependency[] dep = t.getDependenciesAsDependant().toArray();            int i = 0;            if (dep != null && dep.length > 0) {                for (i = 0; i < dep.length - 1; i++)                    resStr += dep[i].getDependee().getTaskID() + ", ";                resStr += dep[i].getDependee().getTaskID() + "";            }            res = resStr;            break;        }        case 10:            res = new Integer(t.getTaskID());            break;        case 11:            ResourceAssignment[] ras = t.getAssignments();            if (ras.length > 0) {                StringBuffer list = new StringBuffer();                synchronized (list) {                    for (int i = 0; i < ras.length - 1; i++) {                        list.append(ras[i].getResource().getName());                        list.append(",");                    }                    list.append(ras[ras.length - 1].getResource().getName());                }                res = list;            } else                res = "-";            break;        case 12:            //res = new Integer(myTaskManager.getTaskHierarchy().getDocumentOrderNumber(t));            break;            default:            String colName = this.getColumnName(column);            // System.out.println(" -> "+colName);            // System.out.println(t+" : "+t.getCustomValues());            res = t.getCustomValues().getValue(colName);            break;        }        // }        // else        // res ="";        return res;    }    /**     * @inheritDoc     */    public void setValueAt(final Object value, final Object node,            final int column) {		if (value==null) {			return;		}        if (isCellEditable(node, column)) {            // System.out.println("undoable colonne: " + column);            Mediator.getGanttProjectSingleton().getUndoManager().undoableEdit(                    "Change properties column", new Runnable() {                        public void run() {                            setValue(value, node, column);                        }                    });        } else {            // System.out.println("NOT undoable colonne: " + column);            setValue(value, node, column);        }        // System.out.println("node : " + node);        // System.out.println("valeur : " + value);        Mediator.getGanttProjectSingleton().repaint();                Mediator.getGanttProjectSingleton().setAskForSave(true);    }    /**     * Set value in left pane cell     *      * @param value     * @param node     * @param column     */    private void setValue(final Object value, final Object node,            final int column) {        switch (column) {        case 0:        case 1:        case 2: // info            ((TaskNode) node).setTaskInfo((TaskInfo) value);        case 8:            break;        case 3:            ((TaskNode) node).setName(value.toString());            break;        case 4:            ((TaskNode) node).setStart((GanttCalendar) value);            ((TaskNode) node).applyThirdDateConstraint();            break;        case 5:            ((TaskNode) node).setEnd((GanttCalendar) value);            break;        case 6:            Task task = (Task) ((TaskNode) node).getUserObject();			TaskLength tl = task.getDuration();			((TaskNode) node).setDuration(task.getManager().createLength(tl.getTimeUnit(),                    ((Integer) value).intValue()));            // set the block position of the chart scrollbar            break;        case 7:            ((TaskNode) node).setCompletionPercentage(((Integer) value)                    .intValue());            break;        default: // custom colums            try {                ((Task) ((TaskNode) node).getUserObject()).getCustomValues()                        .setValue(this.getColumnName(column), value);            } catch (CustomColumnsException e) {                e.printStackTrace();            }        }    }    /**     * @inheritDoc     */    public void columnAdded(TableColumnModelEvent arg0) {        nbCol++;    }    /**     * @inheritDoc     */    public void columnRemoved(TableColumnModelEvent arg0) {        nbCol--;    }    /**     * @inheritDoc     */    public void columnMoved(TableColumnModelEvent arg0) {        // TODO Auto-generated method stub    }    /**     * @inheritDoc     */    public void columnMarginChanged(ChangeEvent arg0) {        // TODO Auto-generated method stub    }    /**     * @inheritDoc     */    public void columnSelectionChanged(ListSelectionEvent arg0) {        // TODO Auto-generated method stub    }    /**     * @inheritDoc     */    public Task[] getNestedTasks(Task container) {        TaskNode r = (TaskNode) root;        Enumeration e = r.children();        Vector v = new Vector();        while (e.hasMoreElements())            v.add((TaskNode) e.nextElement());        Task[] res = new Task[v.size()];        v.toArray(res);        return res;    }    /**     * Purpose: Should return true if this Tasks has any nested subtasks.     */    public boolean hasNestedTasks(Task container) {        TaskNode r = (TaskNode) root;        if (r.getChildCount() > 0) {            return true;        } else {            return false;        }    }    /**     * @inheritDoc     */    public Task getRootTask() {        return (Task) ((TaskNode) this.getRoot()).getUserObject();    }    /**     * Returns the corresponding task node according to the given task.     *      * @param task     *            The task whom tasknode we want to get.     * @return The corresponding task node according to the given task.     */    public TaskNode getTaskNodeForTask(Task task) {        Enumeration enumeration = ((TaskNode) getRoot()).preorderEnumeration();        while (enumeration.hasMoreElements()) {            Object next = enumeration.nextElement();            if (!(next instanceof TaskNode))                continue;            TaskNode tn = (TaskNode) next;            Task t = (Task) tn.getUserObject();            if (t.equals(task))                return tn;        }        return null;    }    /**     * @inheritDoc     */    public Task getContainer(Task nestedTask) {        // TODO Auto-generated method stub        return null;    }    /**     * @inheritDoc     */    public void move(Task whatMove, Task whereMove) {        // TODO Auto-generated method stub    }    /**     * @inheritDoc     */    public boolean areUnrelated(Task dependant, Task dependee) {        // TODO Auto-generated method stub        return false;    }    public int getDepth(Task task) {        // TODO Auto-generated method stub        return 0;    }    public void languageChanged(Event event) {        changeLanguage(event.getLanguage());    }    public int compareDocumentOrder(Task next, Task dependeeTask) {        throw new UnsupportedOperationException();    }    public boolean contains(Task task) {        throw new UnsupportedOperationException();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -