Use context based help for model set validation to display further details

This commit is contained in:
Klaus Basan
2019-03-31 17:55:05 +02:00
committed by Mat Sutcliffe
parent ed20b97950
commit 4bc5b7720e
5 changed files with 44 additions and 7 deletions

View File

@@ -7,6 +7,7 @@
*/
#include "aircraftmodelsetvalidationdialog.h"
#include "guiapplication.h"
#include "blackmisc/simulation/simulatorinfo.h"
#include "ui_aircraftmodelsetvalidationdialog.h"
@@ -22,7 +23,7 @@ namespace BlackGui
ui(new Ui::CAircraftModelSetValidationDialog)
{
ui->setupUi(this);
this->setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
this->setWindowFlags(this->windowFlags() | Qt::WindowContextHelpButtonHint);
}
CAircraftModelSetValidationDialog::~CAircraftModelSetValidationDialog()
@@ -33,5 +34,11 @@ namespace BlackGui
ui->comp_AircraftModelValidation->validatedModelSet(simulator, valid, invalid, stopped, msgs);
this->setWindowTitle(QStringLiteral("Model validation for '%1'").arg(simulator.toQString(true)));
}
bool CAircraftModelSetValidationDialog::event(QEvent *event)
{
if (CGuiApplication::triggerShowHelp(this, event)) { return true; }
return QDialog::event(event);
}
} // ns
} // ns

View File

@@ -43,11 +43,15 @@ namespace BlackGui
explicit CAircraftModelSetValidationDialog(QWidget *parent = nullptr);
//! Destructor
virtual ~CAircraftModelSetValidationDialog();
virtual ~CAircraftModelSetValidationDialog() override;
//! \copydoc CAircraftModelValidationComponent::validatedModelSet
void validatedModelSet(const BlackMisc::Simulation::CSimulatorInfo &simulator, const BlackMisc::Simulation::CAircraftModelList &valid, const BlackMisc::Simulation::CAircraftModelList &invalid, bool stopped, const BlackMisc::CStatusMessageList &msgs);
protected:
//! \copydoc QObject::event
virtual bool event(QEvent *event) override;
private:
QScopedPointer<Ui::CAircraftModelSetValidationDialog> ui;
};

View File

@@ -37,6 +37,7 @@ namespace BlackGui
connect(ui->pb_TempDisableInvalid, &QPushButton::released, this, &CAircraftModelValidationComponent::onButtonClicked);
connect(ui->pb_TempDisableSelected, &QPushButton::released, this, &CAircraftModelValidationComponent::onButtonClicked);
connect(ui->pb_TriggerValidation, &QPushButton::released, this, &CAircraftModelValidationComponent::triggerValidation);
connect(ui->pb_help, &QPushButton::released, this, &CAircraftModelValidationComponent::showHelp);
// 1st init when running in distributed environment
QPointer<CAircraftModelValidationComponent> myself(this);
@@ -148,6 +149,12 @@ namespace BlackGui
}
}
void CAircraftModelValidationComponent::showHelp()
{
if (!sGui || sGui->isShuttingDown()) { return; }
sGui->showHelp(this);
}
void CAircraftModelValidationComponent::saveInvalidModels(const CAircraftModelList &models) const
{
const CStatusMessage m = models.saveInvalidModels();

View File

@@ -71,6 +71,9 @@ namespace BlackGui
//! Button has been clicked
void onButtonClicked();
//! Show help
void showHelp();
//! Save invalid models
void saveInvalidModels(const BlackMisc::Simulation::CAircraftModelList &models) const;
};

View File

@@ -2,6 +2,14 @@
<ui version="4.0">
<class>CAircraftModelValidationComponent</class>
<widget class="QFrame" name="CAircraftModelValidationComponent">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>552</width>
<height>298</height>
</rect>
</property>
<property name="windowTitle">
<string>Model validation</string>
</property>
@@ -57,6 +65,13 @@
<item>
<widget class="QWidget" name="wi_Buttons" native="true">
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="4">
<widget class="QPushButton" name="pb_TempDisableInvalid">
<property name="text">
<string>temp.disable invalid</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="BlackGui::Components::CSimulatorSelector" name="comp_Simulator">
<property name="minimumSize">
@@ -80,7 +95,7 @@
</property>
</widget>
</item>
<item row="0" column="4">
<item row="0" column="5">
<widget class="QPushButton" name="pb_TempDisableSelected">
<property name="text">
<string>temp.disable selected</string>
@@ -88,16 +103,16 @@
</widget>
</item>
<item row="0" column="3">
<widget class="QPushButton" name="pb_TempDisableInvalid">
<widget class="QPushButton" name="pb_TriggerValidation">
<property name="text">
<string>temp.disable invalid</string>
<string>trigger validation</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="pb_TriggerValidation">
<widget class="QPushButton" name="pb_help">
<property name="text">
<string>trigger validation</string>
<string>help</string>
</property>
</widget>
</item>
@@ -129,6 +144,7 @@
<tabstop>tw_CAircraftModelValidationComponent</tabstop>
<tabstop>tvp_InvalidModels</tabstop>
<tabstop>cb_EnableStartupCheck</tabstop>
<tabstop>pb_help</tabstop>
<tabstop>pb_TriggerValidation</tabstop>
<tabstop>pb_TempDisableInvalid</tabstop>
<tabstop>pb_TempDisableSelected</tabstop>