GUI Design - TechnionYearlyProject/Exam-Scheduler GitHub Wiki
General Structure
The GUI (Graphical User Interface) will consist of a few screens aimed at helping the user use the application in a convenient way.
Login Screen
This is the first screen that appears when the application is loaded. The user has to enter his UG details to access the exam scheduler. If the details are incorrect an error message will appear. Includes:
- Text greeting the user
- Username textbox
- Password textbox (chracters appear on the screen as *)
- A button to the next screen.
Semester Picking Screen
This screen allows the system to choose the correct academic year and semster based on the user input. Includes:
- A dropdown menu of years.
- A radio button that chooses the wanted semester. (only 1 option can be chosen).
- Previous and next screen buttons.
Calender Screen
This is the main application screen that shows the final exam schedule to the user. It has 2 versions - in the first screen loadout the user can enter prescheduled exams (based on input from Ullman) to the calender. After the 'SCHEDULE' button is clicked, the main algorithm of the app will output an exam schedule and it will be shown on screen to the user. Includes:
- 2 calenders, one for Moed A and one for Moed B exams.
- SCHEDULE button as described above.
- After the schedule was shown to the user, a list of undergraduate programs (i.e. Bioinformatics) will appear. It will allow the user to view the exams of a specific program.
- After the schedule was shown to the user, a button to the 'Add/Remove Courses Screen' will appear.
- A previous button and a final 'Output to UG' button.
Add/Remove Courses Screen
Allows the user to add/remove courses. The main algorithm will be executed again after the addition/removal of the courses is done. Includes:
- List of courses with a +/- button next to each course. The default option is + on all of the courses. (display/don't display).
- A button to return to the calender (pressing this button will execute the algorithm again as described).