All Classes and Interfaces

Class
Description
The ActionResult class encapsulates the result of a user-related action, such as a login attempt.
The Camp class represents a camp, extending the CampDetails class with additional features.
The CampDeserializer class contains methods to deserialize data into a CampList object.
Represents the details of a camp, including its ID, name, description, visibility, start and end dates, registration closure date, school, location, and the total number of slots.
The CampEnquiryController class manages the operations related to enquiries within a camp context.
Represents a list of camps, providing functionality for filtering and sorting camps based on various criteria.
Represents a view displaying a list of camps with filtering options and functionalities.
Represents a view specifically designed for staff members to manage camps.
Represents a view tailored for students to interact with and manage camps.
The CampModificationController class is responsible for handling the creation, deletion, and editing of camp records in the camp repository.
The CampRegistrationController class is responsible for handling the registration and deregistration of students for camps.
The CampReport class represents a report containing information about camps, including students and their roles.
 
The CampSuggestionController class manages the operations related to suggestions for camp improvements.
The CampViewController class provides methods to retrieve information about camps.
The ChangePasswordView class represents the UI window for changing a user's password.
The Config class holds constant values and arrays related to file paths and ASCII art titles.
 
Represents an enquiry made by a student regarding a specific camp.
The EnquiryDeserializer class contains methods to deserialize data into an EnquiryList object.
Represents a list of enquiries, providing functionalities for filtering enquiries based on various criteria.
The EnquiryReport class represents a report on camp enquiries, including details about questions and answers.
Interface defining a callback mechanism for window actions.
Interface for drawable widgets.
Interface for items that can be filtered by the user who answered them.
The IFilterableByAttendee interface defines a method for filtering items by attendee (e.g., student).
Interface for items that can be filtered by camp.
The IFilterableByCampCommittee interface defines a method for filtering items by camp committee membership.
Interface for filtering a list of items by date range.
Interface for filtering a list of items by ID.
Interface for filtering items by registration date.
Interface for filtering items by school.
Interface for filtering items by sender.
Interface for filtering a list of items by status.
The IFilterableByStudent interface defines a method for filtering items by student.
Interface for filtering a list of items by visibility.
Interface for selectable widgets.
The ISerializable interface represents an app.entity that can be serialized into a list of lists of strings.
Interface for sorting by end date.
Interface for sorting a RepositoryList by ID.
Interface for sorting items by location.
Interface for sorting items by name.
Interface for filtering a list of items by ID.
Interface for sorting items by starting date.
Interface for tagged items.
Interface for text input widgets.
The LoginView class represents the UI window for user login.
The main class representing the entry point of the UI application.
Represents the outcome of an operation, encapsulating the result (success or failure) and an associated comment or message.
OverlayCampInfoDisplayEnquiries extends OverlayCampInfoDisplayView and implements ICallBack.
OverlayCampInfoDisplayEnquiriesCommittee extends OverlayCampInfoDisplayView and implements ICallBack.
OverlayCampInfoDisplayEnquiriesStaff extends OverlayCampInfoDisplayView and implements ICallBack.
OverlayCampInfoDisplayLowRaw extends WindowOverlayClass and manages the display of basic camp information within an overlay, providing details such as camp name, description, dates, location, slots, and visibility.
OverlayCampInfoDisplayView extends WindowOverlayClass and manages the display of camp information within an overlay, providing details such as camp name, description, dates, location, slots, and visibility.
Extension of OverlayCampInfoDisplayView that includes participant and committee views in addition to displaying camp information.
Extension of OverlayCampInfoDisplayWithParticipantsView customized for student view.
Represents an overlay view displaying camp details with the ability to suggest modifications.
The OverlayCampListViewStaffCampActions class represents an overlay window for displaying camp-related actions available to a staff member.
The OverlayCampListViewStudentCampActions class represents an overlay window for displaying camp-related actions available to a student.
Represents an overlay view for staff to edit camp details.
Represents an overlay view displaying camp suggestions for the committee.
Represents an overlay view displaying camp suggestions for staff members.
The OverlayCampSuggestionView class represents an overlay window for viewing camp suggestions.
The OverlayChooseBox class represents an overlay window for presenting a list of choices to the user.
The OverlayNotification class represents an overlay window for displaying notifications with an OK button.
The OverlayTextInputAction class represents an overlay window for receiving text input with options to enter or cancel.
Class OverlayTextInputActionToggles provides an overlay text input with two toggle options.
The PerformanceReport class represents a performance report for committees in camps.
The Report class is an abstract class that implements the ISerializable interface.
The RepositoryCollection class provides a central collection of repositories for users, camps, enquiries, and suggestions.
The RepositoryList class is an abstract base class representing a list-based repository of items implementing the ITaggedItem interface.
The Staff class represents a staff member user who can organize camps.
The StaffMainView class represents the main landing page for a staff user.
The Student class represents a student user with information about attended camps, committees, points, enquiries, and suggestions.
The StudentMainView class represents the main landing page for a student user.
Represents a suggestion made by a student for a camp.
The SuggestionDeserializer class contains methods to deserialize data into a SuggestionList object.
Represents a list of suggestions, providing functionalities for filtering suggestions based on various criteria.
Represents the status of a suggestion.
Enumerates the possible text alignments.
The User abstract class provides a basis for creating user objects with common attributes.
The UserAccountManagementController class manages user account operations within the system.
The UserController class manages user-related operations such as login and user information updates.
The UserDeserializer class contains methods to deserialize user data into a UserList object.
The UserFactory class provides a factory method for creating user objects based on the specified user type.
The UserList class represents a list of user objects.
Abstract class for all widgets in the UI package.
WidgetButton is a UI widget that represents a button.
WidgetLabel is a UI widget that represents a label.
WidgetPageSelection represents a paginated selection widget in a UI.
WidgetPasswordBox represents a password input field in a user interface.
WidgetTextBox represents a text input field in a user interface.
WidgetToggle represents a toggle button in a user interface.
Class representing a basic window in a user interface.
Class representing an overlay window with additional offset and destruction capabilities.
Class responsible for managing multiple windows.