swift
aircraftmodelform.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (C) 2016 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
6 #ifndef SWIFT_GUI_EDITORS_AIRCRAFTMODELFORM_H
7 #define SWIFT_GUI_EDITORS_AIRCRAFTMODELFORM_H
8 
9 #include "gui/editors/form.h"
11 #include "misc/aviation/livery.h"
13 
14 namespace Ui
15 {
16  class CAircraftModelForm;
17 }
18 namespace swift::gui::editors
19 {
23  class CAircraftModelForm : public CForm
24  {
25  Q_OBJECT
26 
27  public:
29  explicit CAircraftModelForm(QWidget *parent = nullptr);
30 
32  virtual ~CAircraftModelForm() override;
33 
35  void allowDrop(bool allowDrop);
36 
38  virtual void setReadOnly(bool readOnly) override;
39 
41  virtual void setSelectOnly() override;
42 
44  virtual swift::misc::CStatusMessageList validate(bool withNestedForms = true) const override;
45 
47  virtual swift::misc::CStatusMessageList validateLivery(bool withNestedForms = true) const;
48 
50  virtual swift::misc::CStatusMessageList validateAircraftIcao(bool withNestedForms = true) const;
51 
53  virtual swift::misc::CStatusMessageList validateDistributor(bool withNestedForms = true) const;
54 
57 
60 
63 
65  bool setLivery(const swift::misc::aviation::CLivery &livery);
66 
69 
72 
74  void clear();
75 
77  void clearLivery();
78 
80  void clearAircraftIcao();
81 
83  void clearDistributor();
84 
85  private:
86  QScopedPointer<Ui::CAircraftModelForm> ui;
87  };
88 } // namespace swift::gui::editors
89 
90 #endif // SWIFT_GUI_EDITORS_AIRCRAFTMODELFORM_H
Combined form of Livery, ICAOs, distributor.
swift::misc::aviation::CAircraftIcaoCode getAircraftIcao() const
Aircraft ICAO.
CAircraftModelForm(QWidget *parent=nullptr)
Constructor.
virtual swift::misc::CStatusMessageList validateLivery(bool withNestedForms=true) const
Validate, empty list means OK.
virtual swift::misc::CStatusMessageList validateDistributor(bool withNestedForms=true) const
Validate, empty list means OK.
virtual void setReadOnly(bool readOnly)
Set editable.
bool setDistributor(const swift::misc::simulation::CDistributor &distributor)
Distributor.
virtual swift::misc::CStatusMessageList validate(bool withNestedForms=true) const
Validate, empty list means OK.
void allowDrop(bool allowDrop)
Allow to drop data.
bool setAircraftIcao(const swift::misc::aviation::CAircraftIcaoCode &icao)
Aircraft.
swift::misc::aviation::CLivery getLivery() const
Livery.
virtual swift::misc::CStatusMessageList validateAircraftIcao(bool withNestedForms=true) const
Validate, empty list means OK.
bool setLivery(const swift::misc::aviation::CLivery &livery)
Livery.
virtual void setSelectOnly()
Read only, but entity can be selected (normally used in mapping). Use setReadOnly to reset this very ...
swift::misc::simulation::CDistributor getDistributor() const
Distributor.
Form base class.
Definition: form.h:27
Status messages, e.g. from Core -> GUI.
Value object for ICAO classification.
Value object encapsulating information about an airpot.
Definition: livery.h:29
Value object encapsulating information of software distributor.
Definition: distributor.h:33