openPilotLog
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 CACompletionDataData to QCompleters and QHashs used for mapping user input to database keys. It retreives the completer targets and mapping data from the database and caches it for fast access without the need to query the database
 CADateResponsible for input/output of Dates and handling the different Date Formats
 CAEntry
 CAAircraftEntry
 CAHashResponsible for calculating cryptographic hashes of files (used to verify downloads)
 CAJsonThe AJSON class is responsible for parsing the database (sqlite) to and from JSON
 COPL::ANotificationHandlerHandles displaying of user-directed messages. It displays information to the user in a QMessageBox and forwards the displayed message to ALog so it is written to the console and log files. The INFO, WARN and CRIT makros provide convenient access
 CARunGuardThe RunGuard class ensures only a single instance of the application is running simultaneously
 CASettingsThin wrapper for the QSettings class, simplifying reading and writing of settings
 CAStandardPathsThe AStandardAppPaths class encapsulates a static QHash holding the standard paths of the application
 CAStyleEncapsulates style and stylesheet logic
 COPL::DbCompletionDataProvides data for QCompleters and QHashs
 CACalc::NightTimeValuesThe NightTimeValues struct encapsulates values relating to night time that are needed by the NewFlightDialog
 CProcessAircraft
 CProcessFlights
 CProcessPilots
 CQDialog
 CFirstRunDialogThe FirstRunDialog is used as a set-up wizard for the application
 CNewAirportDialog
 CNewFlightDialogThe NewFlightDialog is used to add or edit entries from the flights table in the database
 CNewPilotDialogThe NewPilotDialog enables adding new entries to the pilot table in the database
 CNewSimDialogEnables adding a new Simulator Session to the database or editing an existing one
 CNewTailDialogThe NewTailDialog enables adding new Tail entries to the database or editing existing ones
 CQObject
 CADownload
 CATimerEasy to use performance timer
 CATranslatorResponsible for managing the QTranslator used for providing localisations. Translations are planned, but are not currently being worked on. The way QT language tools are working with CMAKE, there are some considerations for when works on translation actually start. See here and here. Long story short, make sure to use a version of CMake that is 3.16 or earlier, or 3.19.2 or later
 COPL::DatabaseThe DB class encapsulates the SQL database by providing fast access to hot database data
 COPL::DbSummaryCollects summaries of entries and relevant data from the database
 COPL::OplGlobalsEncapsulates non-POD globals to avoid making them static. It is available as a global static object via the OPL::GLOBAL makro and may be used as if it were a pointer, guaranteed to be initialized exactly once. For more information, see (Q_GLOBAL_STATIC)[https://doc.qt.io/qt-5/qglobalstatic.html#details]
 CQStandardItem
 CAFileStandardItemSimple QStandardItem subclass to encapsulate necessary file info. Using only a QStandardItem would mean that the full path should be inputted as data and of course displayed by default. However this way we create the absolute path in the fileInfo attribute for further use while displaying only the base name
 CQWidget
 CAircraftWidgetThe AircraftWidget is used to view, edit, delete or add new tails
 CAirportWidget
 CBackupWidgetThe BackupWidget is the interface for the user to create and restore backups of the database
 CDebugWidget
 CHomeWidgetThe HomeWidget is the welcome screen of the application
 CLogbookWidgetThe LogbookWidget displays data from the database in a QSqlTableView fed by a QSqlQuery Model
 CPilotsWidgetThe PilotsWidget is used to view, edit, delete or add new pilots
 CSettingsWidgetThe SettingsWidget is used to to display and alter Settings
 COPL::RowInterface for retreiving and submitting entries from the database. It is a bass class and when instantiated, the appropriate subclass should be used
 COPL::AircraftEntry
 COPL::CurrencyEntry
 COPL::FlightEntry
 COPL::PilotEntry
 COPL::SimulatorEntry
 COPL::TailEntry
 CStyleSheetThe StyleSheet struct holds the Display Name and File Name (in the resource system) for the available stylesheets
 COPL::UserDataStateThe UserDateState struct caches the current number of entries in relevant database tables for fast access
 CValidationStateEncapsulates a QBitArray that has a bit set (or unset) depending on wether the input for the associated index has been verified. The indexes correspond to the mandatory items enumerated in the ValidationItem enum