18 #ifndef OPLCONSTANTS_H
19 #define OPLCONSTANTS_H
22 #include <QMessageBox>
24 #include "src/database/adatabasetypes.h"
42 #if defined(__GNUC__) || defined(__clang__)
43 #define FUNC_IDENT __PRETTY_FUNCTION__
44 #elif defined(_MSC_VER)
45 #define FUNC_IDENT __FUNCSIG__
47 #define FUNC_IDENT __func__
52 #define TODO qCritical() << "TO DO:\t"
54 #define INFO(msg) Opl::ANotificationHandler::info(msg, this)
55 #define WARN(msg) Opl::ANotificationHandler::warn(msg, this)
56 #define CRIT(msg) Opl::ANotificationHandler::crit(msg, this)
65 static inline void info(
const QString msg, QWidget *parent =
nullptr){
68 auto mb = QMessageBox(QMessageBox::Information, QLatin1String(
"Info"), msg, QMessageBox::StandardButton::Ok, parent);
71 static inline void warn(
const QString msg, QWidget *parent =
nullptr){
73 auto mb = QMessageBox(QMessageBox::Warning, QLatin1String(
"Warning"), msg, QMessageBox::StandardButton::Ok, parent);
76 static inline void crit(
const QString msg, QWidget *parent =
nullptr){
78 auto mb = QMessageBox(QMessageBox::Critical, QLatin1String(
"Warning"), msg, QMessageBox::StandardButton::Ok, parent);
83 enum class Translations {English, German, Spanish};
85 const static QMap<Opl::Translations, QString> L10N_FILES {
86 {Opl::Translations::English, QStringLiteral(
"l10n/openpilotlog_en")},
87 {Opl::Translations::German, QStringLiteral(
"l10n/openpilotlog_de")},
88 {Opl::Translations::Spanish, QStringLiteral(
"l10n/openpilotlog_es")},
90 static const QMap<Translations, QString> L10N_NAMES {
91 {Opl::Translations::English, QStringLiteral(
"English")},
92 {Opl::Translations::German, QStringLiteral(
"Deutsch")},
93 {Opl::Translations::Spanish, QStringLiteral(
"EspaƱol")},
102 static const QHash<PilotFunction, QLatin1String> PILOT_FUNCTIONS = {
103 {PilotFunction::PIC, QLatin1String(
"PIC")},
104 {PilotFunction::PICUS, QLatin1String(
"PICUS")},
105 {PilotFunction::SIC, QLatin1String(
"SIC")},
106 {PilotFunction::DUAL, QLatin1String(
"DUAL")},
107 {PilotFunction::FI, QLatin1String(
"FI")},
110 static inline void loadPilotFunctios(QComboBox *combo_box)
112 for (
int i = 0; i < Opl::PILOT_FUNCTIONS.size(); i++)
116 static const QList<QLatin1String> APPROACH_TYPES = {
117 QLatin1String(
"VISUAL"),
118 QLatin1String(
"ILS CAT I"),
119 QLatin1String(
"ILS CAT II"),
120 QLatin1String(
"ILS CAT III"),
121 QLatin1String(
"GLS"),
122 QLatin1String(
"MLS"),
123 QLatin1String(
"LOC"),
124 QLatin1String(
"LOC/DME"),
125 QLatin1String(
"RNAV"),
126 QLatin1String(
"RNAV (LNAV)"),
127 QLatin1String(
"RNAV (LNAV/VNAV)"),
128 QLatin1String(
"RNAV (LPV)"),
129 QLatin1String(
"RNAV (RNP)"),
130 QLatin1String(
"RNAV (RNP-AR)"),
131 QLatin1String(
"VOR"),
132 QLatin1String(
"VOR/DME"),
133 QLatin1String(
"NDB"),
134 QLatin1String(
"NDB/DME"),
135 QLatin1String(
"TACAN"),
136 QLatin1String(
"SRA"),
137 QLatin1String(
"PAR"),
138 QLatin1String(
"OTHER")
141 static inline void loadApproachTypes(QComboBox *combo_box)
143 for (
const auto & approach : Opl::APPROACH_TYPES)
144 combo_box->addItem(approach);
152 enum class ADateFormat {ISODate, DE, EN };
158 enum FlightTimeFormat {Default, Decimal};
164 enum DateTimeFormat {Default, Backup};
187 static const auto TABLE_FLIGHTS = QLatin1String(
"flights");
188 static const auto TABLE_PILOTS = QLatin1String(
"pilots");
189 static const auto TABLE_TAILS = QLatin1String(
"tails");
190 static const auto TABLE_AIRCRAFT = QLatin1String(
"aircraft");
191 static const auto TABLE_AIRPORTS = QLatin1String(
"airports");
192 static const auto TABLE_CURRENCIES = QLatin1String(
"currencies");
195 static const auto FLIGHTS_ROWID = QLatin1String(
"flight_id");
196 static const auto FLIGHTS_DOFT = QLatin1String(
"doft");
197 static const auto FLIGHTS_DEPT = QLatin1String(
"dept");
198 static const auto FLIGHTS_DEST = QLatin1String(
"dest");
199 static const auto FLIGHTS_TOFB = QLatin1String(
"tofb");
200 static const auto FLIGHTS_TONB = QLatin1String(
"tonb");
201 static const auto FLIGHTS_PIC = QLatin1String(
"pic");
202 static const auto FLIGHTS_ACFT = QLatin1String(
"acft");
203 static const auto FLIGHTS_TBLK = QLatin1String(
"tblk");
204 static const auto FLIGHTS_TSPSE = QLatin1String(
"tSPSE");
205 static const auto FLIGHTS_TSPME = QLatin1String(
"tSPME");
206 static const auto FLIGHTS_TMP = QLatin1String(
"tMP");
207 static const auto FLIGHTS_TNIGHT = QLatin1String(
"tNIGHT");
208 static const auto FLIGHTS_TIFR = QLatin1String(
"tIFR");
209 static const auto FLIGHTS_TPIC = QLatin1String(
"tPIC");
210 static const auto FLIGHTS_TPICUS = QLatin1String(
"tPICUS");
211 static const auto FLIGHTS_TSIC = QLatin1String(
"tSIC");
212 static const auto FLIGHTS_TDUAL = QLatin1String(
"tDUAL");
213 static const auto FLIGHTS_TFI = QLatin1String(
"tFI");
214 static const auto FLIGHTS_TSIM = QLatin1String(
"tSIM");
215 static const auto FLIGHTS_PILOTFLYING = QLatin1String(
"pilotFlying");
216 static const auto FLIGHTS_TODAY = QLatin1String(
"toDay");
217 static const auto FLIGHTS_TONIGHT = QLatin1String(
"toNight");
218 static const auto FLIGHTS_LDGDAY = QLatin1String(
"ldgDay");
219 static const auto FLIGHTS_LDGNIGHT = QLatin1String(
"ldgNight");
220 static const auto FLIGHTS_AUTOLAND = QLatin1String(
"autoland");
221 static const auto FLIGHTS_SECONDPILOT = QLatin1String(
"secondPilot");
222 static const auto FLIGHTS_THIRDPILOT = QLatin1String(
"thirdPilot");
223 static const auto FLIGHTS_APPROACHTYPE = QLatin1String(
"approachType");
224 static const auto FLIGHTS_FLIGHTNUMBER = QLatin1String(
"flightNumber");
225 static const auto FLIGHTS_REMARKS = QLatin1String(
"remarks");
229 static const auto TAILS_ROWID = QLatin1String(
"tail_id");
230 static const auto TAILS_REGISTRATION = QLatin1String(
"registration");
231 static const auto TAILS_COMPANY = QLatin1String(
"company");
232 static const auto TAILS_MAKE = QLatin1String(
"make");
233 static const auto TAILS_MODEL = QLatin1String(
"model");
234 static const auto TAILS_VARIANT = QLatin1String(
"variant");
235 static const auto TAILS_MULTIPILOT = QLatin1String(
"multipilot");
236 static const auto TAILS_MULTIENGINE = QLatin1String(
"multiengine");
237 static const auto TAILS_ENGINETYPE = QLatin1String(
"engineType");
238 static const auto TAILS_WEIGHTCLASS = QLatin1String(
"weightClass");
242 static const auto PILOTS_ROWID = QLatin1String(
"pilot_id");
243 static const auto PILOTS_LASTNAME = QLatin1String(
"lastname");
244 static const auto PILOTS_FIRSTNAME = QLatin1String(
"firstname");
245 static const auto PILOTS_ALIAS = QLatin1String(
"alias");
246 static const auto PILOTS_COMPANY = QLatin1String(
"company");
247 static const auto PILOTS_EMPLOYEEID = QLatin1String(
"employeeid");
248 static const auto PILOTS_PHONE = QLatin1String(
"phone");
249 static const auto PILOTS_EMAIL = QLatin1String(
"email");
252 static const auto CURRENCIES_EXPIRYDATE = QLatin1String(
"expiryDate");
253 static const auto CURRENCIES_DESCRIPTION = QLatin1String(
"description");
256 static const auto ROWID = QLatin1String(
"ROWID");
257 static const auto NULL_TIME_hhmm = QLatin1String(
"00:00");
259 static const auto DEFAULT_FLIGHT_POSITION =
DataPosition(TABLE_FLIGHTS, 0);
260 static const auto DEFAULT_PILOT_POSITION =
DataPosition(TABLE_PILOTS, 0);
261 static const auto DEFAULT_TAIL_POSITION =
DataPosition(TABLE_TAILS, 0);
262 static const auto DEFAULT_AIRCRAFT_POSITION =
DataPosition(TABLE_AIRCRAFT, 0);
268 static const auto LOGO = QLatin1String(
":/icons/opl-icons/logos/logo_text.png");
269 static const auto ICON_MAIN = QLatin1String(
":/icons/opl-icons/app/icon_main.png");
270 static const auto ICON_APPICON_LINUX = QLatin1String(
":/icons/opl-icons/app/icon_linux.svg");
271 static const auto ICON_APPICON_IOS = QLatin1String(
":/icons/opl-icons/app/icon_ios.svg");
272 static const auto ICON_APPICON_WIN = QLatin1String(
":/icons/opl-icons/app/icon_windows.ico");
274 static const auto ICON_TOOLBAR_HOME = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_home.svg");
275 static const auto ICON_TOOLBAR_NEW_FLIGHT = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_new_flight.svg");
276 static const auto ICON_TOOLBAR_LOGBOOK = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_logbook.svg");
277 static const auto ICON_TOOLBAR_AIRCRAFT = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_airplane.svg");
278 static const auto ICON_TOOLBAR_PILOT = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_pilot.svg");
279 static const auto ICON_TOOLBAR_SETTINGS = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_settings.svg");
280 static const auto ICON_TOOLBAR_QUIT = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_exit.svg");
282 static const auto ICON_TOOLBAR_BACKUP = QLatin1String(
":/icons/opl-icons/toolbar/thick/light/icon_backup.svg");
284 static const auto ICON_TOOLBAR_HOME_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_home_dm.svg");
285 static const auto ICON_TOOLBAR_NEW_FLIGHT_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_new_flight_dm.svg");
286 static const auto ICON_TOOLBAR_LOGBOOK_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_logbook_dm.svg");
287 static const auto ICON_TOOLBAR_AIRCRAFT_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_airplane_dm.svg");
288 static const auto ICON_TOOLBAR_PILOT_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_pilot_dm.svg");
289 static const auto ICON_TOOLBAR_SETTINGS_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_settings_dm.svg");
290 static const auto ICON_TOOLBAR_QUIT_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_exit_dm.svg");
292 static const auto ICON_TOOLBAR_BACKUP_DARK = QLatin1String(
":/icons/opl-icons/toolbar/thick/dark/icon_backup_dm.svg");
The ANotificationHandler class handles displaying of user-directed messages. It displays information ...
Definition: opl.h:63
A namespace to collect constants and enums used throughout the application.
Definition: opl.h:40
PilotFunction
PilotFunction Pilot in Command, Pilot in Command under Supervision, Second in Command (Co-Pilot),...
Definition: opl.h:100
Definition: adatabasetypes.h:44