6 #ifndef SWIFT_GUI_COMPONENTS_DBSTASHCOMPONENT_H
7 #define SWIFT_GUI_COMPONENTS_DBSTASHCOMPONENT_H
13 #include <QMessageBox>
15 #include <QScopedPointer>
16 #include <QStringList>
35 class CLogCategoryList;
38 class CAircraftIcaoCode;
44 class CDbStashComponent;
50 class CAircraftModelView;
66 static constexpr
int MaxModelPublished = 1000;
76 bool allowReplace)
const;
79 int unstashModels(
const QSet<int> &keys);
82 int unstashModels(
const QStringList &modelStrings);
91 bool hasStashedModels()
const;
94 int getStashedModelsCount()
const;
97 QStringList getStashedModelStrings()
const;
125 void showChangedAttributes();
128 void clearValidationHighlighting();
133 bool replace =
false,
bool consolidateWithDbData =
true,
134 bool clearHighlighting =
true);
138 bool replace =
false,
bool consolidateWithDbData =
true,
139 bool clearHighlighting =
true);
153 QScopedPointer<Ui::CDbStashComponent> ui;
155 this, &CDbStashComponent::onUserChanged
159 void onUnstashPressed();
162 void onValidatePressed();
165 void onRemoveInvalidPressed();
168 void onPublishPressed();
177 void copyOverValuesToSelectedModels();
180 void modifyModelDialog();
183 void onRowCountChanged(
int number,
bool filter);
186 void onUserChanged();
190 bool appendOldMessages =
false,
191 std::chrono::milliseconds timeout = std::chrono::milliseconds(0));
195 bool appendOldMessages,
const QString &confirmation,
196 std::function<
void()> okLambda,
197 QMessageBox::StandardButton defaultButton,
bool onlyErrors =
false,
198 std::chrono::milliseconds timeout = std::chrono::milliseconds(0));
202 std::chrono::milliseconds timeout = std::chrono::milliseconds(0));
205 void clearOverlayMessages();
214 bool displayInfo =
false);
217 void enableButtonRow();
Allows subcomponents to gain access to model component.
void stashedModelsChanged()
Stashed models have been changed.
void modelsSuccessfullyPublished(const swift::misc::simulation::CAircraftModelList &publishedModels, bool directWrite)
Models succesfully published.
A sequence of log categories.
Specialized value object compliant map for variants, based on indexes.
Streamable status message, e.g.
Status messages, e.g. from Core -> GUI.
Value object for ICAO classification.
Value object for ICAO classification.
Value object encapsulating information about an airpot.
Value object encapsulating information of an authentiated user.
Aircraft model (used by another pilot, my models on disk)
Value object encapsulating a list of aircraft models.
Value object encapsulating information of software distributor.
Free functions in swift::misc.
#define SWIFT_GUI_EXPORT
Export a class or function from the library.