TODO List
parent
1ba8e34a54
commit
3826d33c6b
|
@ -0,0 +1,23 @@
|
|||
package TodoListApp.Domain;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class ProgrammSystem {
|
||||
|
||||
private TaskList tasks;
|
||||
|
||||
public ProgrammSystem() {
|
||||
this.tasks = new TaskList();
|
||||
}
|
||||
|
||||
public void addTask(String title, String beschreibung, String eingabeTaskprioritaet){
|
||||
tasks.addTaskZuList(title, beschreibung, eingabeTaskprioritaet);
|
||||
}
|
||||
|
||||
public ArrayList<String> showAllTasks() {
|
||||
return tasks.printAllTask();
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -7,15 +7,12 @@ import TodoListApp.Domain.KlassenException.*;
|
|||
public class TaskList {
|
||||
|
||||
private ArrayList<Task> alleTasks;
|
||||
private Task task;
|
||||
|
||||
|
||||
public TaskList() {
|
||||
|
||||
this.alleTasks = new ArrayList<>();
|
||||
}
|
||||
|
||||
public boolean addTask(String title, String beschreibung, String eingabeTaskprioritaet)throws FalscheEinagebException {
|
||||
public boolean addTaskZuList(String title, String beschreibung, String eingabeTaskprioritaet) {
|
||||
Prioritaet taskPrioritaet = null;
|
||||
switch (eingabeTaskprioritaet) {
|
||||
case "niedrig":
|
||||
|
@ -31,14 +28,13 @@ public class TaskList {
|
|||
break;
|
||||
default:
|
||||
taskPrioritaet = taskPrioritaet.Niedrig;
|
||||
throw new FalscheEinagebException("Ungültige Priorität. Standardmäßig wird 'niedrig' verwendet");
|
||||
}
|
||||
task = new Task(title,beschreibung,taskPrioritaet);
|
||||
alleTasks.add(task);
|
||||
return true;
|
||||
|
||||
alleTasks.add(new Task(title,beschreibung,taskPrioritaet));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public boolean removeTask(Task task) {
|
||||
|
||||
for (Task t : alleTasks) {
|
||||
|
@ -59,7 +55,7 @@ public class TaskList {
|
|||
throw new TaskNichtGefundenException("Task wurde nicht gefunden" );
|
||||
}
|
||||
|
||||
public ArrayList<String> getAlleGemachteTasks() {
|
||||
public ArrayList<String> printAlleGemachteTasks() {
|
||||
ArrayList<String> alleGemachteTasks = new ArrayList<>();
|
||||
for (Task t : alleTasks) {
|
||||
if (t.isIstGemacht() == true)
|
||||
|
@ -73,12 +69,8 @@ public class TaskList {
|
|||
int index = 1;
|
||||
for (Task t : alleTasks) {
|
||||
printallTasks.add(index++ + ".Task: " + t.toString() + ".");
|
||||
printallTasks.add("\n");
|
||||
}
|
||||
|
||||
|
||||
return printallTasks;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
package TodoListApp.GUI_UserInterface;
|
||||
|
||||
import java.awt.*;
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.EmptyBorder;
|
||||
import javax.swing.table.DefaultTableModel;
|
||||
|
||||
import TodoListApp.Domain.*;
|
||||
|
||||
public class GUI_UserInterface extends JFrame {
|
||||
|
||||
private JPanel contentPane;
|
||||
private JButton addTask;
|
||||
private JButton zeigeAlleTasks;
|
||||
private JTextArea AllTasksArea;
|
||||
|
||||
public GUI_UserInterface() {
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
|
||||
setBounds(100, 100, 696, 661);
|
||||
contentPane = new JPanel();
|
||||
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
|
||||
|
||||
setContentPane(contentPane);
|
||||
contentPane.setLayout(null);
|
||||
|
||||
JPanel panel = new JPanel();
|
||||
panel.setBackground(new Color(0, 128, 255));
|
||||
panel.setBounds(0, 0, 680, 622);
|
||||
contentPane.add(panel);
|
||||
panel.setLayout(null);
|
||||
|
||||
JLabel lblNewLabel = new JLabel("TO DO List");
|
||||
lblNewLabel.setForeground(new Color(255, 255, 255));
|
||||
lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER);
|
||||
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 22));
|
||||
lblNewLabel.setBounds(152, 24, 340, 57);
|
||||
panel.add(lblNewLabel);
|
||||
|
||||
JPanel panel_1 = new JPanel();
|
||||
panel_1.setBounds(10, 97, 660, 398);
|
||||
panel.add(panel_1);
|
||||
panel_1.setLayout(null);
|
||||
|
||||
AllTasksArea = new JTextArea();
|
||||
AllTasksArea.setEnabled(false);
|
||||
AllTasksArea.setEditable(false);
|
||||
AllTasksArea.setForeground(new Color(0, 0, 0));
|
||||
AllTasksArea.setFont(new Font("Arial", Font.BOLD, 14));
|
||||
AllTasksArea.setBounds(10, 11, 640, 376);
|
||||
panel_1.add(AllTasksArea);
|
||||
|
||||
addTask = new JButton("Task hinzufügen");
|
||||
addTask.setBounds(10, 506, 159, 29);
|
||||
panel.add(addTask);
|
||||
|
||||
zeigeAlleTasks = new JButton("Alle Taks");
|
||||
zeigeAlleTasks.setBounds(193, 506, 159, 29);
|
||||
panel.add(zeigeAlleTasks);
|
||||
|
||||
this.setVisible(true);
|
||||
|
||||
}
|
||||
|
||||
public JButton getAddTask() {
|
||||
return addTask;
|
||||
}
|
||||
|
||||
public JButton getZeigeAlleTasks() {
|
||||
return zeigeAlleTasks;
|
||||
}
|
||||
|
||||
public JTextArea getAllTasksArea() {
|
||||
return AllTasksArea;
|
||||
}
|
||||
|
||||
public void setAllTasksArea(JTextArea allTasksArea) {
|
||||
AllTasksArea = allTasksArea;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,156 @@
|
|||
package TodoListApp.GUI_UserInterface;
|
||||
|
||||
|
||||
import java.awt.*;
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.EmptyBorder;
|
||||
import javax.swing.border.LineBorder;
|
||||
import javax.swing.table.DefaultTableModel;
|
||||
|
||||
import TodoListApp.Domain.*;
|
||||
|
||||
public class GUI_addTask extends JFrame {
|
||||
|
||||
private JPanel contentPane;
|
||||
private JTextField tasktitle;
|
||||
private JTextField taskBeschreibung;
|
||||
private ButtonGroup priorityGroup;
|
||||
private JButton submitTask;
|
||||
private JRadioButton hoch, mittel,niedrig ;
|
||||
|
||||
public GUI_addTask() {
|
||||
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE );
|
||||
setBounds(100, 100, 515, 618);
|
||||
contentPane = new JPanel();
|
||||
contentPane.setBackground(new Color(255, 255, 255));
|
||||
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
|
||||
|
||||
setContentPane(contentPane);
|
||||
contentPane.setLayout(null);
|
||||
|
||||
JPanel panel = new JPanel();
|
||||
panel.setBorder(new LineBorder(new Color(255, 255, 255), 3));
|
||||
panel.setBackground(new Color(0, 128, 255));
|
||||
panel.setForeground(new Color(255, 255, 255));
|
||||
panel.setBounds(31, 26, 441, 517);
|
||||
contentPane.add(panel);
|
||||
panel.setLayout(null);
|
||||
|
||||
JLabel lblNewLabel = new JLabel("Füge Task hinzu");
|
||||
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
|
||||
lblNewLabel.setForeground(new Color(255, 255, 255));
|
||||
lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER);
|
||||
lblNewLabel.setBounds(76, 11, 289, 58);
|
||||
panel.add(lblNewLabel);
|
||||
|
||||
JLabel lblNewLabel_1 = new JLabel("Title:");
|
||||
lblNewLabel_1.setForeground(new Color(255, 255, 255));
|
||||
lblNewLabel_1.setHorizontalAlignment(SwingConstants.LEFT);
|
||||
lblNewLabel_1.setFont(new Font("Tahoma", Font.BOLD, 14));
|
||||
lblNewLabel_1.setBounds(24, 79, 103, 14);
|
||||
panel.add(lblNewLabel_1);
|
||||
|
||||
JLabel lblNewLabel_1_1 = new JLabel("Beschreibung: ");
|
||||
lblNewLabel_1_1.setHorizontalAlignment(SwingConstants.LEFT);
|
||||
lblNewLabel_1_1.setForeground(Color.WHITE);
|
||||
lblNewLabel_1_1.setFont(new Font("Tahoma", Font.BOLD, 14));
|
||||
lblNewLabel_1_1.setBounds(24, 121, 103, 14);
|
||||
panel.add(lblNewLabel_1_1);
|
||||
|
||||
JLabel lblNewLabel_1_3 = new JLabel("Priorität:");
|
||||
lblNewLabel_1_3.setHorizontalAlignment(SwingConstants.LEFT);
|
||||
lblNewLabel_1_3.setForeground(Color.WHITE);
|
||||
lblNewLabel_1_3.setFont(new Font("Tahoma", Font.BOLD, 14));
|
||||
lblNewLabel_1_3.setBounds(24, 203, 103, 14);
|
||||
panel.add(lblNewLabel_1_3);
|
||||
|
||||
tasktitle = new JTextField();
|
||||
tasktitle.setBounds(142, 77, 133, 20);
|
||||
panel.add(tasktitle);
|
||||
tasktitle.setColumns(10);
|
||||
|
||||
taskBeschreibung = new JTextField();
|
||||
taskBeschreibung.setColumns(10);
|
||||
taskBeschreibung.setBounds(142, 119, 133, 20);
|
||||
panel.add(taskBeschreibung);
|
||||
|
||||
// RadioButtons erstellen
|
||||
hoch = new JRadioButton("Hoch");
|
||||
hoch.setSelected(true);
|
||||
hoch.setBounds(142, 165, 89, 23);
|
||||
panel.add(hoch);
|
||||
|
||||
mittel = new JRadioButton("Mittel");
|
||||
mittel.setBounds(142, 201, 89, 23);
|
||||
panel.add(mittel);
|
||||
|
||||
niedrig = new JRadioButton("Niedrig");
|
||||
niedrig.setBounds(142, 240, 89, 23);
|
||||
panel.add(niedrig);
|
||||
|
||||
// ButtonGroup erstellen, um die RadioButtons zu gruppieren
|
||||
priorityGroup = new ButtonGroup();
|
||||
priorityGroup.add(hoch);
|
||||
priorityGroup.add(mittel);
|
||||
priorityGroup.add(niedrig);
|
||||
|
||||
submitTask = new JButton("Submit");
|
||||
submitTask.setBounds(24, 323, 123, 23);
|
||||
panel.add(submitTask);
|
||||
}
|
||||
|
||||
public void zeigeFensterAddTask() {
|
||||
this.setVisible(true);
|
||||
}
|
||||
|
||||
public void closeFensterAddTask() {
|
||||
this.setVisible(false);
|
||||
}
|
||||
|
||||
public JTextField getTasktitle() {
|
||||
return tasktitle;
|
||||
}
|
||||
|
||||
public void setTasktitle(JTextField tasktitle) {
|
||||
this.tasktitle = tasktitle;
|
||||
}
|
||||
|
||||
public JTextField getTaskBeschreibung() {
|
||||
return taskBeschreibung;
|
||||
}
|
||||
|
||||
public void setTaskBeschreibung(JTextField taskBeschreibung) {
|
||||
this.taskBeschreibung = taskBeschreibung;
|
||||
}
|
||||
|
||||
public ButtonGroup getPriorityGroup() {
|
||||
return priorityGroup;
|
||||
}
|
||||
|
||||
public JButton getSubmitTask() {
|
||||
return submitTask;
|
||||
}
|
||||
|
||||
public JRadioButton getHoch() {
|
||||
return hoch;
|
||||
}
|
||||
|
||||
public JRadioButton getMittel() {
|
||||
return mittel;
|
||||
}
|
||||
|
||||
public JRadioButton getNiedrig() {
|
||||
return niedrig;
|
||||
}
|
||||
|
||||
public void resetButtons() {
|
||||
tasktitle.setText("");
|
||||
taskBeschreibung.setText("");
|
||||
hoch.setSelected(true);
|
||||
}
|
||||
|
||||
public void showInfo(String message) {
|
||||
JOptionPane.showMessageDialog(null, message, "Studen angemeldet", JOptionPane.INFORMATION_MESSAGE);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
package TodoListApp.GUI_UserInterface;
|
||||
|
||||
import TodoListApp.Domain.ProgrammSystem;
|
||||
import TodoListApp.Domain.KlassenException.FalscheEinagebException;
|
||||
|
||||
public class Userverwalter {
|
||||
|
||||
private ProgrammSystem system;
|
||||
private GUI_UserInterface user;
|
||||
private GUI_addTask taskHinziFuegenFenster;
|
||||
|
||||
public Userverwalter() {
|
||||
this.system = new ProgrammSystem();
|
||||
this.user = new GUI_UserInterface();
|
||||
this.taskHinziFuegenFenster = new GUI_addTask();
|
||||
|
||||
// Buttons User:
|
||||
user.getAddTask().addActionListener(e -> {
|
||||
try {
|
||||
zeigeFenster();
|
||||
} catch (FalscheEinagebException e1) {
|
||||
// TODO Auto-generated catch block
|
||||
e1.printStackTrace();
|
||||
}
|
||||
});
|
||||
|
||||
taskHinziFuegenFenster.getSubmitTask().addActionListener(e -> {
|
||||
try {
|
||||
addTask();
|
||||
} catch (FalscheEinagebException e1) {
|
||||
// TODO Auto-generated catch block
|
||||
e1.printStackTrace();
|
||||
}
|
||||
});
|
||||
|
||||
user.getZeigeAlleTasks().addActionListener(e -> showAllTasks());
|
||||
|
||||
}
|
||||
|
||||
public void zeigeFenster() throws FalscheEinagebException {
|
||||
taskHinziFuegenFenster.zeigeFensterAddTask();
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void addTask() throws FalscheEinagebException {
|
||||
|
||||
String title = taskHinziFuegenFenster.getTasktitle().getText();
|
||||
String beschreibung = taskHinziFuegenFenster.getTaskBeschreibung().getText();
|
||||
String priorität;
|
||||
if (taskHinziFuegenFenster.getHoch().isSelected())
|
||||
priorität = "hoch";
|
||||
else if (taskHinziFuegenFenster.getMittel().isSelected())
|
||||
priorität = "mittle";
|
||||
else if (taskHinziFuegenFenster.getNiedrig().isSelected())
|
||||
priorität = "niedrig";
|
||||
else
|
||||
priorität = "niedrig";
|
||||
|
||||
system.addTask(title, beschreibung, priorität);
|
||||
taskHinziFuegenFenster.resetButtons();
|
||||
taskHinziFuegenFenster.showInfo("Neuer Task wurde Erfolgreich hinzugefügt!");
|
||||
}
|
||||
|
||||
public void showAllTasks() {
|
||||
for (String s : system.showAllTasks()) {
|
||||
user.getAllTasksArea().append(s);
|
||||
user.getAllTasksArea().append("\n");
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,11 +1,13 @@
|
|||
package TodoListApp;
|
||||
|
||||
import TodoListApp.Domain.KlassenException.FalscheEinagebException;
|
||||
import TodoListApp.GUI_UserInterface.GUI_UserInterface;
|
||||
import TodoListApp.GUI_UserInterface.Userverwalter;
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) throws FalscheEinagebException {
|
||||
new UserInterface();
|
||||
new Userverwalter();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -19,6 +19,7 @@ public class UserInterface {
|
|||
String beschreibung;
|
||||
String taskprioritaet;
|
||||
boolean aktiv = true;
|
||||
System.out.println();
|
||||
System.out.println("<<Willkommen in meinem ToDo-List Programm>>");
|
||||
System.out.println();
|
||||
while (aktiv) {
|
||||
|
@ -43,8 +44,8 @@ public class UserInterface {
|
|||
System.out.print("Taskpriorität:");
|
||||
System.out.print("> ");
|
||||
taskprioritaet = eingabe.nextLine().trim();
|
||||
if (tasks.addTask(title, beschreibung, taskprioritaet))
|
||||
System.out.println("Task erfolgreich hinzugefügt");
|
||||
// if (tasks.addTask(title, beschreibung, taskprioritaet))
|
||||
// System.out.println("Task erfolgreich hinzugefügt");
|
||||
break;
|
||||
|
||||
case "2":
|
||||
|
|
Loading…
Reference in New Issue