Package org.cesilko.rachota.gui
Class FilteredTasksTableModel
- java.lang.Object
-
- javax.swing.table.AbstractTableModel
-
- org.cesilko.rachota.gui.FilteredTasksTableModel
-
- All Implemented Interfaces:
java.io.Serializable,javax.swing.table.TableModel
public class FilteredTasksTableModel extends javax.swing.table.AbstractTableModelTable model for filtered tasks.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static intDESCRIPTIONIdentification of filter name column.static intDURATION_DAYSIdentification of filter content column.static intDURATION_TIMEIdentification of filter content rule column.
-
Constructor Summary
Constructors Constructor Description FilteredTasksTableModel()Creates a new instance of FilteredTasksTableModel
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetColumnCount()Returns number of columns in the table i.e.java.lang.StringgetColumnName(int column)Returns name of column by given column number.intgetRowCount()Returns number of rows in the table i.e.TaskgetSimilarTask(int row)Returns similar task to the one at given row.intgetSortedColumn()Returns column that is currently sorted.java.lang.StringgetSortedOrder()Returns sorting order that is currently used.doublegetTotalTime()Returns total time spent on all displayed tasks.java.lang.ObjectgetValueAt(int row, int column)Returns value of cell located in given row and column.voidsetGroupSameTasks(boolean groupSameTasks)Sets whether to group tasks with same description or not.voidsetTasks(java.util.Vector tasks)Sets filtered tasks with new vector and refreshes the table.voidsortTable(int column, boolean changeOrder)Sorts table according to given column and known order.-
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt
-
-
-
-
Field Detail
-
DESCRIPTION
public static final int DESCRIPTION
Identification of filter name column.- See Also:
- Constant Field Values
-
DURATION_TIME
public static final int DURATION_TIME
Identification of filter content rule column.- See Also:
- Constant Field Values
-
DURATION_DAYS
public static final int DURATION_DAYS
Identification of filter content column.- See Also:
- Constant Field Values
-
-
Method Detail
-
setGroupSameTasks
public void setGroupSameTasks(boolean groupSameTasks)
Sets whether to group tasks with same description or not.- Parameters:
groupSameTasks- If true, tasks with same description will occupy one row.
-
setTasks
public void setTasks(java.util.Vector tasks)
Sets filtered tasks with new vector and refreshes the table.- Parameters:
tasks- Vector of filtered tasks to be displayed in the table.
-
getValueAt
public java.lang.Object getValueAt(int row, int column)Returns value of cell located in given row and column.- Parameters:
row- Number of row.column- Number of column.- Returns:
- Value of cell at specified location.
-
getSimilarTask
public Task getSimilarTask(int row)
Returns similar task to the one at given row.- Parameters:
row- Row of task to be found.- Returns:
- Either same task or new task with same description.
-
getRowCount
public int getRowCount()
Returns number of rows in the table i.e. filtered tasks. The number depends on the groupSameTasks setting.- Returns:
- Number of rows in the table i.e. number of filtered tasks either unique or same depending on whether they should be grouped.
-
getColumnCount
public int getColumnCount()
Returns number of columns in the table i.e. 3.- Returns:
- Always 3 since table has three columns.
-
getColumnName
public java.lang.String getColumnName(int column)
Returns name of column by given column number.- Specified by:
getColumnNamein interfacejavax.swing.table.TableModel- Overrides:
getColumnNamein classjavax.swing.table.AbstractTableModel- Parameters:
column- Number of column.- Returns:
- Name of column by given column number.
-
getTotalTime
public double getTotalTime()
Returns total time spent on all displayed tasks.- Returns:
- Total time spent on all displayed tasks in miliseconds.
-
getSortedColumn
public int getSortedColumn()
Returns column that is currently sorted.- Returns:
- Column that is being sorted.
-
getSortedOrder
public java.lang.String getSortedOrder()
Returns sorting order that is currently used.- Returns:
- Returns + char in case of ascending order or - char in case of descending order.
-
sortTable
public void sortTable(int column, boolean changeOrder)Sorts table according to given column and known order.- Parameters:
column- Column that will be used for sorting.changeOrder- Should the sorting order be changed ?
-
-