Reference no: EM13537724
Implement a personal scheduler Windows application. The application should have the following features:
I. Create a new Java Project named SchedulerApp.
II. Add a new package named business.
A. Add a new Java class named Schedule that has fields: event date and time, event description, and enable/disable flag.
III. Add a new package named dataaccess.
A. Add a new Interface named ScheduleReader that defines interface functions to read the schedule data.
B. Add a new Interface named ScheduleWriter that defines interface functions to write the schedule data to the storage.
C. Add a new Interface named ScheduleConstants that defines any necessary constants for this project.
D. Add a new Java class named ScheduleData that implements the above interfaces. It is used to store the schedules to the text file and read it back from the file.
IV. Add a new package named presentation.
A. Add a new JFrame Form named MyScheduleForm. This is a main form that has a list of schedule entries can be viewed in a list box and other buttons to allow the user to search, add, edit and delete entries. It also has a menu bar that allows the user to open a schedule file and save the updated list to the file.
B. Add another new JFrame Form named ScheduleEntry that is a data entry form for the user to input a new schedule entry.
C. Add a new DataValidation class that is used to validate the user input errors and other exception if any.
V. Schedule entries can be added, edited, and deleted. When the user tries to add a new schedule entry, a dialog window will pop up to expose an entry form for each new schedule entry. The user enters a date and time ( to the nearest minute), an event description into the schedule entry form. When the dialog box is closed, a new schedule entry is constructed from the information entered in the dialog box.
VI. Entries can be enabled and disabled: Enabled schedule entries appear dark in the main window, and disabled entries appear grayed out in the list.
VII.If you leave the application running, it will pop up a dialog box to remind you of upcoming event 15 minutes before the scheduled entry