Ref T554, auto publishing dialog in swift pilot client UI

This commit is contained in:
Klaus Basan
2019-06-18 02:55:37 +02:00
parent ceeacb5e37
commit ff8aedd99b
6 changed files with 60 additions and 20 deletions

View File

@@ -31,7 +31,7 @@ namespace BlackGui
explicit CAutoPublishDialog(QWidget *parent = nullptr); explicit CAutoPublishDialog(QWidget *parent = nullptr);
//! Destructor //! Destructor
virtual ~CAutoPublishDialog(); virtual ~CAutoPublishDialog() override;
//! \copydoc CAutoPublishComponent::readFiles //! \copydoc CAutoPublishComponent::readFiles
int readFiles(); int readFiles();

View File

@@ -6,6 +6,14 @@
* or distributed except according to the terms contained in the LICENSE file. * or distributed except according to the terms contained in the LICENSE file.
*/ */
#include "blackgui/components/infobarstatuscomponent.h"
#include "blackgui/components/logcomponent.h"
#include "blackgui/components/dbloaddatadialog.h"
#include "blackgui/components/autopublishdialog.h"
#include "blackgui/components/settingscomponent.h"
#include "blackgui/guiapplication.h"
#include "blackgui/guiutility.h"
#include "blackgui/overlaymessagesframe.h"
#include "blackcore/context/contextapplication.h" #include "blackcore/context/contextapplication.h"
#include "blackcore/context/contextaudio.h" #include "blackcore/context/contextaudio.h"
#include "blackcore/context/contextnetwork.h" #include "blackcore/context/contextnetwork.h"
@@ -13,13 +21,6 @@
#include "blackcore/network.h" #include "blackcore/network.h"
#include "blackcore/webdataservices.h" #include "blackcore/webdataservices.h"
#include "blackcore/corefacadeconfig.h" #include "blackcore/corefacadeconfig.h"
#include "blackgui/components/infobarstatuscomponent.h"
#include "blackgui/components/logcomponent.h"
#include "blackgui/components/dbloaddatadialog.h"
#include "blackgui/components/settingscomponent.h"
#include "blackgui/guiapplication.h"
#include "blackgui/guiutility.h"
#include "blackgui/overlaymessagesframe.h"
#include "blackmisc/audio/notificationsounds.h" #include "blackmisc/audio/notificationsounds.h"
#include "blackmisc/icons.h" #include "blackmisc/icons.h"
#include "blackmisc/logcategory.h" #include "blackmisc/logcategory.h"

View File

@@ -45,8 +45,15 @@ class QEvent;
class QMouseEvent; class QMouseEvent;
class QTimer; class QTimer;
namespace BlackMisc { namespace Aviation { class CAltitude; } } namespace BlackMisc { namespace Aviation { class CAltitude; } }
namespace BlackGui { namespace Components { class CDbLoadDataDialog; }} namespace BlackGui
{
namespace Components
{
class CDbLoadDataDialog;
class CAutoPublishDialog;
}
}
namespace Ui { class SwiftGuiStd; } namespace Ui { class SwiftGuiStd; }
//! swift GUI //! swift GUI
@@ -102,8 +109,9 @@ protected:
private: private:
QScopedPointer<Ui::SwiftGuiStd> ui; QScopedPointer<Ui::SwiftGuiStd> ui;
QScopedPointer<BlackGui::Components::CNavigatorDialog> m_navigator{ new BlackGui::Components::CNavigatorDialog() }; //!< navigator dialog bar, if I pass the parent, the dialog is always centered over the parent QScopedPointer<BlackGui::Components::CNavigatorDialog> m_navigator{ new BlackGui::Components::CNavigatorDialog() }; //!< navigator dialog bar, if I pass the parent, the dialog is always centered over the parent
QScopedPointer<BlackGui::Components::CDbLoadDataDialog> m_dbLoadDialog; //!< load DB data, lazy init UI component QScopedPointer<BlackGui::Components::CDbLoadDataDialog> m_dbLoadDialog; //!< load DB data, lazy init UI component
QScopedPointer<BlackGui::Components::CAutoPublishDialog> m_autoPublishDialog; //!< auto publish dialog
QScopedPointer<BlackGui::Components::CAircraftModelSetValidationDialog> m_validationDialog; //!< aircraft model validation dialog QScopedPointer<BlackGui::Components::CAircraftModelSetValidationDialog> m_validationDialog; //!< aircraft model validation dialog
BlackCore::CActionBind m_actionPtt { BlackMisc::Input::pttHotkeyAction(), BlackMisc::CIcons::radio16(), this, &SwiftGuiStd::onPttChanged }; BlackCore::CActionBind m_actionPtt { BlackMisc::Input::pttHotkeyAction(), BlackMisc::CIcons::radio16(), this, &SwiftGuiStd::onPttChanged };
BlackCore::CActionBindings m_menuHotkeyHandlers; BlackCore::CActionBindings m_menuHotkeyHandlers;
@@ -283,6 +291,9 @@ private:
//! Copy the XSwiftBus files from build directory //! Copy the XSwiftBus files from build directory
void copyXSwiftBusDialog(bool checkFileTimestamp); void copyXSwiftBusDialog(bool checkFileTimestamp);
//! Auto publish diloag
void autoPublishDialog();
//! Request overlay inline text message @{ //! Request overlay inline text message @{
void onShowOverlayVariant(const BlackMisc::CVariant &variant, int durationMs); void onShowOverlayVariant(const BlackMisc::CVariant &variant, int durationMs);
void onShowOverlayInlineTextMessageTab(BlackGui::Components::TextMessageTab tab); void onShowOverlayInlineTextMessageTab(BlackGui::Components::TextMessageTab tab);

View File

@@ -274,16 +274,17 @@
<addaction name="menu_WindowToggleNavigator"/> <addaction name="menu_WindowToggleNavigator"/>
<addaction name="separator"/> <addaction name="separator"/>
</widget> </widget>
<widget class="QMenu" name="menu_Map"> <widget class="QMenu" name="menu_Tools">
<property name="title"> <property name="title">
<string>Map</string> <string>Tools</string>
</property> </property>
<addaction name="menu_MovingMap"/> <addaction name="menu_MovingMap"/>
<addaction name="menu_AutoPublish"/>
</widget> </widget>
<addaction name="menu_File"/> <addaction name="menu_File"/>
<addaction name="menu_Window"/> <addaction name="menu_Window"/>
<addaction name="menu_InfoAreas"/> <addaction name="menu_InfoAreas"/>
<addaction name="menu_Map"/> <addaction name="menu_Tools"/>
<addaction name="menu_Help"/> <addaction name="menu_Help"/>
<addaction name="menu_Test"/> <addaction name="menu_Test"/>
</widget> </widget>
@@ -500,6 +501,15 @@
<string>Moving map</string> <string>Moving map</string>
</property> </property>
</action> </action>
<action name="menu_AutoPublish">
<property name="icon">
<iconset resource="../blackmisc/blackmisc.qrc">
<normaloff>:/diagona/icons/diagona/icons/paper-plane--plus.png</normaloff>:/diagona/icons/diagona/icons/paper-plane--plus.png</iconset>
</property>
<property name="text">
<string>Auto-publish</string>
</property>
</action>
</widget> </widget>
<layoutdefault spacing="6" margin="11"/> <layoutdefault spacing="6" margin="11"/>
<customwidgets> <customwidgets>
@@ -546,7 +556,9 @@
<container>1</container> <container>1</container>
</customwidget> </customwidget>
</customwidgets> </customwidgets>
<resources/> <resources>
<include location="../blackmisc/blackmisc.qrc"/>
</resources>
<connections/> <connections/>
<slots> <slots>
<slot>setMainPage()</slot> <slot>setMainPage()</slot>

View File

@@ -217,13 +217,14 @@ void SwiftGuiStd::initGuiSignals()
connect(ui->menu_TestLocationsEDRY, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked); connect(ui->menu_TestLocationsEDRY, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(ui->menu_TestLocationsLOWW, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked); connect(ui->menu_TestLocationsLOWW, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(ui->menu_WindowToggleNavigator, &QAction::triggered, m_navigator.data(), &CNavigatorDialog::toggleNavigatorVisibility);
connect(ui->menu_WindowFont, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked); connect(ui->menu_WindowFont, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(ui->menu_WindowMinimize, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked); connect(ui->menu_WindowMinimize, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(ui->menu_WindowToggleOnTop, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked); connect(ui->menu_WindowToggleOnTop, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(ui->menu_WindowToggleNavigator, &QAction::triggered, m_navigator.data(), &CNavigatorDialog::toggleNavigatorVisibility); connect(ui->menu_InternalsPage, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(ui->menu_InternalsPage, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked); connect(ui->menu_AutoPublish, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(ui->menu_MovingMap, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked); connect(ui->menu_MovingMap, &QAction::triggered, this, &SwiftGuiStd::onMenuClicked);
connect(m_navigator.data(), &CNavigatorDialog::navigatorClosed, this, &SwiftGuiStd::onNavigatorClosed, Qt::QueuedConnection); connect(m_navigator.data(), &CNavigatorDialog::navigatorClosed, this, &SwiftGuiStd::onNavigatorClosed, Qt::QueuedConnection);
// settings (GUI component), styles // settings (GUI component), styles
connect(ui->comp_MainInfoArea->getSettingsComponent(), &CSettingsComponent::changedWindowsOpacity, this, &SwiftGuiStd::onChangedWindowOpacity); connect(ui->comp_MainInfoArea->getSettingsComponent(), &CSettingsComponent::changedWindowsOpacity, this, &SwiftGuiStd::onChangedWindowOpacity);

View File

@@ -8,6 +8,7 @@
#include "blackgui/components/maininfoareacomponent.h" #include "blackgui/components/maininfoareacomponent.h"
#include "blackgui/components/settingscomponent.h" #include "blackgui/components/settingscomponent.h"
#include "blackgui/components/autopublishdialog.h"
#include "blackgui/guiactionbind.h" #include "blackgui/guiactionbind.h"
#include "blackgui/guiapplication.h" #include "blackgui/guiapplication.h"
#include "blackgui/foreignwindows.h" #include "blackgui/foreignwindows.h"
@@ -31,6 +32,7 @@
using namespace BlackConfig; using namespace BlackConfig;
using namespace BlackGui; using namespace BlackGui;
using namespace BlackGui::Components;
using namespace BlackCore; using namespace BlackCore;
using namespace BlackMisc; using namespace BlackMisc;
using namespace BlackMisc::PhysicalQuantities; using namespace BlackMisc::PhysicalQuantities;
@@ -80,6 +82,10 @@ void SwiftGuiStd::onMenuClicked()
{ {
ui->sw_MainMiddle->setCurrentIndex(MainPageInternals); ui->sw_MainMiddle->setCurrentIndex(MainPageInternals);
} }
else if (sender == ui->menu_AutoPublish)
{
this->autoPublishDialog();
}
else if (sender == ui->menu_MovingMap && sGui && !sGui->getGlobalSetup().getSwiftMapUrls().isEmpty()) else if (sender == ui->menu_MovingMap && sGui && !sGui->getGlobalSetup().getSwiftMapUrls().isEmpty())
{ {
const CUrlList urls = sGui->getGlobalSetup().getSwiftMapUrls(); const CUrlList urls = sGui->getGlobalSetup().getSwiftMapUrls();
@@ -174,3 +180,12 @@ void SwiftGuiStd::copyXSwiftBusDialog(bool checkFileTimestamp)
const int c = CCopyXSwiftBusDialog::displayDialogAndCopyBuildFiles(xPlaneRootDir, checkFileTimestamp, this); const int c = CCopyXSwiftBusDialog::displayDialogAndCopyBuildFiles(xPlaneRootDir, checkFileTimestamp, this);
if (c > 0) { CLogMessage(this).info(u"Copied %1 files from build directory") << c; } if (c > 0) { CLogMessage(this).info(u"Copied %1 files from build directory") << c; }
} }
void SwiftGuiStd::autoPublishDialog()
{
if (!m_autoPublishDialog)
{
m_autoPublishDialog.reset(new CAutoPublishDialog(this));
}
m_autoPublishDialog->show();
}