taskseriescollection.java
来自「JfreeChart 常用图表例子」· Java 代码 · 共 619 行 · 第 1/2 页
JAVA
619 行
/** * Returns the start value for a task. * * @param rowKey the series. * @param columnKey the category. * * @return The start value. */ public Number getStartValue(Comparable rowKey, Comparable columnKey) { Number result = null; int row = getRowIndex(rowKey); TaskSeries series = (TaskSeries) this.data.get(row); Task task = series.get(columnKey.toString()); if (task != null) { TimePeriod duration = task.getDuration(); result = new Long(duration.getStart().getTime()); } return result; } /** * Returns the start value for a task. * * @param row the row index (zero-based). * @param column the column index (zero-based). * * @return The start value. */ public Number getStartValue(int row, int column) { Comparable rowKey = getRowKey(row); Comparable columnKey = getColumnKey(column); return getStartValue(rowKey, columnKey); } /** * Returns the end value for a task. * * @param rowKey the series. * @param columnKey the category. * * @return The end value. */ public Number getEndValue(Comparable rowKey, Comparable columnKey) { Number result = null; int row = getRowIndex(rowKey); TaskSeries series = (TaskSeries) this.data.get(row); Task task = series.get(columnKey.toString()); if (task != null) { TimePeriod duration = task.getDuration(); result = new Long(duration.getEnd().getTime()); } return result; } /** * Returns the end value for a task. * * @param row the row index (zero-based). * @param column the column index (zero-based). * * @return The end value. */ public Number getEndValue(int row, int column) { Comparable rowKey = getRowKey(row); Comparable columnKey = getColumnKey(column); return getEndValue(rowKey, columnKey); } /** * Returns the percent complete for a given item. * * @param row the row index (zero-based). * @param column the column index (zero-based). * * @return The percent complete (possibly <code>null</code>). */ public Number getPercentComplete(int row, int column) { Comparable rowKey = getRowKey(row); Comparable columnKey = getColumnKey(column); return getPercentComplete(rowKey, columnKey); } /** * Returns the percent complete for a given item. * * @param rowKey the row key. * @param columnKey the column key. * * @return The percent complete. */ public Number getPercentComplete(Comparable rowKey, Comparable columnKey) { Number result = null; int row = getRowIndex(rowKey); TaskSeries series = (TaskSeries) this.data.get(row); Task task = series.get(columnKey.toString()); if (task != null) { result = task.getPercentComplete(); } return result; } /** * Returns the number of sub-intervals for a given item. * * @param row the row index (zero-based). * @param column the column index (zero-based). * * @return The sub-interval count. */ public int getSubIntervalCount(int row, int column) { Comparable rowKey = getRowKey(row); Comparable columnKey = getColumnKey(column); return getSubIntervalCount(rowKey, columnKey); } /** * Returns the number of sub-intervals for a given item. * * @param rowKey the row key. * @param columnKey the column key. * * @return The sub-interval count. */ public int getSubIntervalCount(Comparable rowKey, Comparable columnKey) { int result = 0; int row = getRowIndex(rowKey); TaskSeries series = (TaskSeries) this.data.get(row); Task task = series.get(columnKey.toString()); if (task != null) { result = task.getSubtaskCount(); } return result; } /** * Returns the start value of a sub-interval for a given item. * * @param row the row index (zero-based). * @param column the column index (zero-based). * @param subinterval the sub-interval index (zero-based). * * @return The start value (possibly <code>null</code>). */ public Number getStartValue(int row, int column, int subinterval) { Comparable rowKey = getRowKey(row); Comparable columnKey = getColumnKey(column); return getStartValue(rowKey, columnKey, subinterval); } /** * Returns the start value of a sub-interval for a given item. * * @param rowKey the row key. * @param columnKey the column key. * @param subinterval the subinterval. * * @return The start value (possibly <code>null</code>). */ public Number getStartValue(Comparable rowKey, Comparable columnKey, int subinterval) { Number result = null; int row = getRowIndex(rowKey); TaskSeries series = (TaskSeries) this.data.get(row); Task task = series.get(columnKey.toString()); if (task != null) { Task sub = task.getSubtask(subinterval); if (sub != null) { TimePeriod duration = sub.getDuration(); result = new Long(duration.getStart().getTime()); } } return result; } /** * Returns the end value of a sub-interval for a given item. * * @param row the row index (zero-based). * @param column the column index (zero-based). * @param subinterval the subinterval. * * @return The end value (possibly <code>null</code>). */ public Number getEndValue(int row, int column, int subinterval) { Comparable rowKey = getRowKey(row); Comparable columnKey = getColumnKey(column); return getEndValue(rowKey, columnKey, subinterval); } /** * Returns the end value of a sub-interval for a given item. * * @param rowKey the row key. * @param columnKey the column key. * @param subinterval the subinterval. * * @return The end value (possibly <code>null</code>). */ public Number getEndValue(Comparable rowKey, Comparable columnKey, int subinterval) { Number result = null; int row = getRowIndex(rowKey); TaskSeries series = (TaskSeries) this.data.get(row); Task task = series.get(columnKey.toString()); if (task != null) { Task sub = task.getSubtask(subinterval); if (sub != null) { TimePeriod duration = sub.getDuration(); result = new Long(duration.getEnd().getTime()); } } return result; } /** * Returns the percentage complete value of a sub-interval for a given item. * * @param row the row index (zero-based). * @param column the column index (zero-based). * @param subinterval the sub-interval. * * @return The percent complete value (possibly <code>null</code>). */ public Number getPercentComplete(int row, int column, int subinterval) { Comparable rowKey = getRowKey(row); Comparable columnKey = getColumnKey(column); return getPercentComplete(rowKey, columnKey, subinterval); } /** * Returns the percentage complete value of a sub-interval for a given item. * * @param rowKey the row key. * @param columnKey the column key. * @param subinterval the sub-interval. * * @return The precent complete value (possibly <code>null</code>). */ public Number getPercentComplete(Comparable rowKey, Comparable columnKey, int subinterval) { Number result = null; int row = getRowIndex(rowKey); TaskSeries series = (TaskSeries) this.data.get(row); Task task = series.get(columnKey.toString()); if (task != null) { Task sub = task.getSubtask(subinterval); if (sub != null) { result = sub.getPercentComplete(); } } return result; } /** * Called when a series belonging to the dataset changes. * * @param event information about the change. */ public void seriesChanged(SeriesChangeEvent event) { refreshKeys(); fireDatasetChanged(); } /** * Refreshes the keys. */ private void refreshKeys() { this.keys.clear(); for (int i = 0; i < getSeriesCount(); i++) { TaskSeries series = (TaskSeries) this.data.get(i); // look for any keys that we don't already know about... Iterator iterator = series.getTasks().iterator(); while (iterator.hasNext()) { Task task = (Task) iterator.next(); String key = task.getDescription(); int index = this.keys.indexOf(key); if (index < 0) { this.keys.add(key); } } } } /** * Tests this instance for equality with an arbitrary object. * * @param obj the object (<code>null</code> permitted). * * @return A boolean. */ public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof TaskSeriesCollection)) { return false; } TaskSeriesCollection that = (TaskSeriesCollection) obj; if (!ObjectUtilities.equal(this.data, that.data)) { return false; } return true; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?