6 #ifndef SWIFT_GUI_COMPONENTS_FLIGHTPLANCOMPONENT_H
7 #define SWIFT_GUI_COMPONENTS_FLIGHTPLANCOMPONENT_H
10 #include <QListWidget>
12 #include <QNetworkReply>
14 #include <QScopedPointer>
15 #include <QStringList>
21 #include "misc/aviation/comnavequipment.h"
23 #include "misc/aviation/ssrequipment.h"
37 class CFlightPlanComponent;
41 namespace FlightPlanSettings
47 static const char *
key() {
return "flightplan/remarkshistory"; }
52 static const QString name(
"FP remarks history");
61 static const char *
key() {
return "flightplan/remarkshistoryadd"; }
66 static const QString name(
"FP remarks history (add)");
72 class CStringListDialog;
73 class CAltitudeDialog;
74 class CSimBriefDownloadDialog;
101 static constexpr std::chrono::milliseconds OverlayTimeout { 5000 };
103 CAltitudeDialog *m_altitudeDialog =
nullptr;
104 CStringListDialog *m_fpRemarksDialog =
nullptr;
105 CSimBriefDownloadDialog *m_simBriefDialog =
nullptr;
106 QMenu *m_navComEquipmentMenu =
nullptr;
107 QMenu *m_ssrEquipmentMenu =
nullptr;
127 struct WakeTurbulenceEntry
144 static const QString &defaultIcao()
146 static const QString d(
"ICAO");
151 static const QString &defaultTime()
153 static const QString t(
"00:00");
161 void prefillWithOwnAircraftData();
170 void initCompleters();
173 QString getDefaultFilename(
bool load);
176 void currentTextChangedToBuildRemarks(
const QString &text)
178 this->buildRemarksString();
183 void syncVoiceComboBoxes(
const QString &text);
186 void sendFlightPlan();
189 void resetFlightPlan();
195 void loadTemplateFromDisk();
201 bool saveFPToDisk(
const QString &fileName);
204 void saveTemplateToDisk();
207 void clearTemplate();
210 QString getTemplateName()
const;
213 void setSelcalInOwnAircraft();
216 void loadFlightPlanFromNetwork();
219 void buildRemarksString();
222 void copyRemarksConfirmed() { this->copyRemarks(
true); }
225 void copyRemarks(
bool confirm =
true);
228 void currentTabGenerator();
231 void swiftWebDataRead();
234 void aircraftTypeChanged();
237 void syncWithSimulator();
243 void showEquipmentCodesTab();
252 bool overrideRemarks();
255 void updateDirectorySettings(
const QString &fileOrDirectory);
258 void altitudeDialog();
261 void remarksHistory();
264 void updateRemarksHistories();
267 void setRemarksUIValues(
const QString &remarks);
270 void loadFromSimBrief();
276 void setupNavComContextMenu();
279 void setupSsrContextMenu();
282 void updateNavComEquipmentFromSelection();
285 void updateSsrEquipmentFromSelection();
288 void updateNavComEquipmentUi();
291 void updateSsrEquipmentUi();
304 static void updateListSelection(
QMenu *menu,
const QStringList &enabledOptions);
const swift::misc::aviation::CFlightPlan & getSentFlightPlan() const
Get sent flight plan.
~CFlightPlanComponent()
Destructor.
Value object encapsulating information identifying a component of a modular distributed swift process...
Status messages, e.g. from Core -> GUI.
Value object for ICAO classification.
ICAO flightplan field 10a.
Value object for a flight plan.
FlightRules
Flight rules (VFR or IFR)
ICAO flightplan field 10b.
ICAO wake turbulence category.
Value object encapsulating information of a user.
Aircraft model (used by another pilot, my models on disk)
Comprehensive information of an aircraft.
High level reusable GUI components.
Base class for traits to be used as template argument to swift::misc::CSetting.
#define SWIFT_GUI_EXPORT
Export a class or function from the library.