Skip to content

TerminalBear/TaskManager

Repository files navigation

TaskManager

TaskManagerGUI
The TaskManagerGUI constructor initializes the JFrame and its components. It sets up a JPanel with a BorderLayout, and adds a top panel for the search field and buttons, and a center panel for the JTable.
The JTable is initialized with a DefaultTableModel that allows all cells to be editable. The table model is set up with seven columns: "Name", "Description", "Creation Date", "Due Date", "Status", "Priority", and "Suggested Priority".
The "Status" and "Priority" columns use JComboBoxes for cell editing. The "Creation Date" and "Due Date" columns use a custom renderer and editor for displaying and editing dates. The "Suggested Priority" column uses a custom renderer and editor for a "Predict" button.
The addTask method adds a new row to the table with default values. The removeTask method removes the selected rows from the table. The DateRenderer class is a custom cell renderer for displaying dates in the "Creation Date" and "Due Date" columns.
The PredictButtonRenderer and PredictButtonEditor classes are custom cell renderer and editor for the "Predict" button in the "Suggested Priority" column. When the button is clicked, it uses a DecisionTree predictor to predict the priority of the task and updates the cell value.
The DateEditor class is a custom cell editor for editing dates in the "Due Date" column.
There is a class for priority visualization using a bar graph when Task and Priority button is clicked.
There is a feedback button for "Inaccurate Prediction" which acknowledges and adjusts decision tree weights.
The main method creates an instance of the TaskManagerGUI class, which launches the application.
GUI also includes buttons for sorting, word search, and a graphical visualization of the tasks and priorities.

Main.java
Example implementation of HashTable with hardcoded tasks

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages