swift
Public Member Functions | Protected Member Functions | List of all members
CSwiftGuiStdApplication Class Reference

Specialized GUI application for swift pilot client. More...

Inheritance diagram for CSwiftGuiStdApplication:
[legend]

Public Member Functions

 CSwiftGuiStdApplication ()
 Constructor.
 
CSwiftGuiStdApplicationinstance ()
 Single instance.
 
- Public Member Functions inherited from swift::gui::CGuiApplication
 CGuiApplication (const QString &applicationName=executable(), swift::misc::CApplicationInfo::Application application=swift::misc::CApplicationInfo::Unknown, const QPixmap &icon=swift::misc::CIcons::swift64())
 Constructor.
 
 ~CGuiApplication ()
 Destructor.
 
void addWindowStateOption ()
 CMD line arguments.
 
void addWindowModeOption ()
 CMD line arguments.
 
void addWindowResetSizeOption ()
 CMD line arguments (reset size store)
 
void addWindowScaleSizeOption ()
 CMD line arguments (scale size on DPI screens)
 
Qt::WindowState getWindowState () const
 Window state.
 
CEnableForFramelessWindow::WindowMode getWindowMode () const
 Window mode (window flags)
 
void processEventsToRefreshGui () const
 Allow the GUI to refresh by processing events, call the event loop.
 
void initMainApplicationWidget (QWidget *mainWidget)
 Init the main application window based on information in this application. More...
 
void addWindowFlags (Qt::WindowFlags flags)
 Set window flag on main application window.
 
QString setExtraWindowTitle (const QString &extraInfo, QWidget *mainWindowWidget=mainApplicationWidget()) const
 Set window title.
 
bool isCmdWindowSizeResetSet () const
 Window size reset mode set.
 
void splashScreen (const QPixmap &pixmap)
 Add a splash screen based on resource, empty means remove splash screen.
 
void addMenuForSettingsAndCache (QMenu &menu)
 Add menu items for settings and cache.
 
void addMenuForStyleSheets (QMenu &menu)
 Add menu for style sheets.
 
void addMenuFile (QMenu &menu)
 File menu.
 
void addMenuInternals (QMenu &menu)
 Internals menu.
 
void addMenuWindow (QMenu &menu)
 Window operations.
 
void openUrl (const swift::misc::network::CUrl &url)
 Open a given URL.
 
void addMenuHelp (QMenu &menu)
 Help operations.
 
void showHelp (const QString &context={}) const
 Show help page (online help)
 
void showHelp (const QObject *qObject) const
 Show help page (online help), use QObject::objectName as 2nd level context.
 
const CStyleSheetUtilitygetStyleSheetUtility () const
 Style sheet handling.
 
QString getWidgetStyle () const
 Current widget style.
 
bool reloadStyleSheets ()
 Reload style sheets.
 
bool openStandardWidgetStyleSheet ()
 Opens the standard stylesheet.
 
bool openStandardLogDirectory ()
 Opens the standard log directory.
 
bool openStandardCrashDumpDirectory ()
 Opens the standard dumps directory.
 
bool updateFont (const QString &fontFamily, const QString &fontSize, const QString &fontStyle, const QString &fontWeight, const QString &fontColor)
 Update the fonts.
 
bool updateFont (const QString &qss)
 Update the fonts.
 
bool resetFont ()
 Reset the font to default.
 
void setMinimumSizeInCharacters (int widthChars, int heightChars)
 Set minimum width/height in characters. More...
 
void displaySetupLoadFailure (swift::misc::CStatusMessageList msgs)
 Display the failures caused by loading the setup file. More...
 
QDialog::DialogCode showCloseDialog (QMainWindow *mainWindow, QCloseEvent *closeEvent)
 Show close dialog. More...
 
void triggerNewVersionCheck (int delayedMs)
 Trigger new version check.
 
void gracefulShutdown ()
 Graceful shutdown. More...
 
bool toggleStayOnTop ()
 Toggle stay on top.
 
void windowMinimizeNormalToggle ()
 Window minimize/normalize.
 
void setSaveMainWidgetState (bool save)
 Save the main widget state?
 
bool saveWindowGeometryAndState (const QMainWindow *window=CGuiApplication::mainApplicationWindow()) const
 Save widget's geometry and state.
 
void resetWindowGeometryAndState ()
 Reset the saved values.
 
bool restoreWindowGeometryAndState (QMainWindow *window=CGuiApplication::mainApplicationWindow())
 Restore widget's geometry and state.
 
void registerMainApplicationWidget (QWidget *mainWidget)
 Register main application window widget if this is known. More...
 
bool hasMinimumMappingVersion () const
 Minimum mapping version check. More...
 
void cmdLineErrorMessage (const QString &text, const QString &informativeText) const
 print messages generated during parsing / cmd handling
 
void cmdLineErrorMessage (const swift::misc::CStatusMessageList &msgs) const
 print messages generated during parsing / cmd handling
 
bool displayInStatusBar (const swift::misc::CStatusMessage &message)
 direct access to main application window
 
bool displayInOverlayWindow (const swift::misc::CStatusMessage &message, std::chrono::milliseconds timeout=std::chrono::milliseconds(0))
 direct access to main application window
 
bool displayInOverlayWindow (const swift::misc::CStatusMessageList &messages, std::chrono::milliseconds timeout=std::chrono::milliseconds(0))
 direct access to main application window
 
bool displayInOverlayWindow (const QString &html, std::chrono::milliseconds timeout=std::chrono::milliseconds(0))
 direct access to main application window
 
void windowToFront ()
 Window to front/back.
 
void windowToBack ()
 Window to front/back.
 
void windowToFrontBackToggle ()
 Window to front/back.
 
- Public Member Functions inherited from swift::core::CApplication
 CApplication (swift::misc::CApplicationInfo::Application application, bool init=true)
 Constructor.
 
 CApplication (const QString &applicationName=executable(), swift::misc::CApplicationInfo::Application application=swift::misc::CApplicationInfo::Unknown, bool init=true)
 Constructor.
 
 ~CApplication ()
 Destructor.
 
bool isAlreadyRunning () const
 True if this swift application is already running (including different versions)
 
bool isShuttingDown () const
 Is application shutting down? More...
 
bool isIncognito () const
 Is incognito mode? More...
 
void setIncognito (bool incognito)
 Set incognito mode. More...
 
void toggleIncognito ()
 Toggle incognito mode. More...
 
const swift::misc::CApplicationInfogetApplicationInfo () const
 swift application running
 
const QString & getApplicationName () const
 Application name and version.
 
const QString & getApplicationNameAndVersion () const
 Application name and version.
 
const QString & getApplicationNameVersionDetailed () const
 Version, name beta and dev info.
 
data::CGlobalSetup getGlobalSetup () const
 Global setup. More...
 
swift::misc::db::CUpdateInfo getUpdateInfo () const
 Update info.
 
void reloadUpdateInfo ()
 Reload update info.
 
swift::misc::db::CDistribution getOwnDistribution () const
 Own distribution. More...
 
const QString & versionStringDetailed () const
 String with beta, dev. and version.
 
const QString & swiftVersionString () const
 swift info string
 
const char * swiftVersionChar ()
 swift info string
 
bool isDeveloperFlagSet () const
 Running with dev.flag?
 
QString getInfoString (const QString &separator) const
 Comprehensive info.
 
void restartApplication (const QStringList &newArguments={}, const QStringList &removeArguments={})
 Stop and restart application.
 
int exec ()
 Finishes initialization and executes the event loop.
 
bool hasUnsavedSettings () const
 Unsaved settings.
 
void saveSettingsOnShutdown (bool saveSettings)
 Save settings on shutdown.
 
QStringList getUnsavedSettingsKeys () const
 All unsaved settings.
 
swift::misc::CStatusMessage saveSettingsByKey (const QStringList &keys)
 Save all settings.
 
QStringList argumentsJoined (const QStringList &newArguments={}, const QStringList &removeArguments={}) const
 Current parameters replaced by new arguments without the cmd line argument.
 
void enableCrashDumpUpload (bool enable)
 Enable crash upload. More...
 
bool isSupportingCrashpad () const
 Has crashpad support?
 
CInputManagergetInputManager () const
 The input manager, if available.
 
QPointer< ISimulatorgetISimulator () const
 The simulator plugin, if available.
 
bool hasSimulator () const
 Simulator object available?
 
swift::misc::shared_state::CDataLinkDBusgetDataLinkDBus ()
 Transport mechanism for sharing state between applications.
 
bool hasSetupReader () const
 Setup reader?
 
CSetupReadergetSetupReader () const
 Access to setup reader. More...
 
bool isSetupAvailable () const
 Setup already synchronized.
 
swift::misc::network::CUrl getVatsimMetarUrl () const
 Consolidated version of METAR URLs, either from CGlobalSetup or CVatsimSetup. More...
 
swift::misc::network::CUrl getVatsimDataFileUrl () const
 Consolidated version of data file URL, either from CGlobalSetup or CVatsimSetup. More...
 
swift::misc::network::CUrl getVatsimServerFileUrl () const
 Get URL to file which contains the list of VATSIM servers.
 
swift::misc::network::CUrl getVatsimFsdHttpUrl () const
 Get VATSIM FSD HTTP URL.
 
virtual bool start ()
 Start services, if not yet parsed call CApplication::parse.
 
bool addParserOption (const QCommandLineOption &option)
 
bool addParserOptions (const QList< QCommandLineOption > &options)
 
void addDBusAddressOption ()
 CMD line argument for DBus address.
 
QString getCmdDBusAddressValue () const
 DBus address from CMD line, otherwise "".
 
void addNetworkOptions ()
 Add the network options.
 
void addAudioOptions ()
 Add the audio options.
 
bool skipSingleApplicationCheck () const
 Skip the single application check.
 
bool isParserOptionSet (const QString &option) const
 Delegates to QCommandLineParser::isSet.
 
bool isParserOptionSet (const QCommandLineOption &option) const
 Delegates to QCommandLineParser::isSet.
 
QString getParserValue (const QString &option) const
 Delegates to QCommandLineParser::value.
 
QString getParserValue (const QCommandLineOption &option) const
 Delegates to QCommandLineParser::value.
 
bool parseCommandLineArgsAndLoadSetup ()
 Combined function that does a startup check, parses the command line arguments and loads the setup. More...
 
bool supportsContexts (bool ignoreShutdownTest=false) const
 Supports contexts. More...
 
const CCoreFacadeConfiggetCoreFacadeConfig () const
 The core facade config.
 
swift::misc::CStatusMessageList initContextsAndStartCoreFacade (const CCoreFacadeConfig &coreConfig)
 Init the contexts part and start core facade. More...
 
swift::misc::CStatusMessageList startCoreFacadeWithoutContexts ()
 Starts the core facade without any contexts. More...
 
swift::misc::CStatusMessageList initAndStartWebDataServices (CWebReaderFlags::WebReader webReader, const db::CDatabaseReaderConfigList &dbReaderConfig)
 Init web data services and start them. More...
 
CCoreFacadegetCoreFacade ()
 Get the facade.
 
bool isLocalContext () const
 Local application? (not DBus)
 
bool isDBusContext () const
 DBus application? (not Local)
 
const CCoreFacadegetCoreFacade () const
 Get the facade.
 
const context::IContextNetworkgetIContextNetwork () const
 Direct access to contexts if a CCoreFacade has been initialized.
 
const context::IContextAudiogetIContextAudio () const
 Direct access to contexts if a CCoreFacade has been initialized.
 
const context::CContextAudioBasegetCContextAudioBase () const
 Direct access to contexts if a CCoreFacade has been initialized.
 
const context::IContextApplicationgetIContextApplication () const
 Direct access to contexts if a CCoreFacade has been initialized.
 
const context::IContextOwnAircraftgetIContextOwnAircraft () const
 Direct access to contexts if a CCoreFacade has been initialized.
 
const context::IContextSimulatorgetIContextSimulator () const
 Direct access to contexts if a CCoreFacade has been initialized.
 
context::IContextNetworkgetIContextNetwork ()
 Direct access to contexts if a CCoreFacade has been initialized.
 
context::IContextAudiogetIContextAudio ()
 Direct access to contexts if a CCoreFacade has been initialized.
 
context::CContextAudioBasegetCContextAudioBase ()
 Direct access to contexts if a CCoreFacade has been initialized.
 
context::IContextApplicationgetIContextApplication ()
 Direct access to contexts if a CCoreFacade has been initialized.
 
context::IContextOwnAircraftgetIContextOwnAircraft ()
 Direct access to contexts if a CCoreFacade has been initialized.
 
context::IContextSimulatorgetIContextSimulator ()
 Direct access to contexts if a CCoreFacade has been initialized.
 
void deleteAllCookies ()
 Delete all cookies from cookie manager.
 
const QNetworkAccessManager * getNetworkAccessManager () const
 Access to access manager. More...
 
QNetworkAccessManager * getNetworkAccessManager ()
 Access to access manager. More...
 
bool hasWebDataServices () const
 Web data services available? More...
 
CWebDataServicesgetWebDataServices () const
 Get the web data services. More...
 
QNetworkReply * getFromNetwork (const swift::misc::network::CUrl &url, const CallbackSlot &callback, int maxRedirects=DefaultMaxRedirects)
 Request to get network reply. More...
 
QNetworkReply * getFromNetwork (const swift::misc::network::CUrl &url, const CallbackSlot &callback, const ProgressSlot &progress, int maxRedirects=DefaultMaxRedirects)
 Request to get network reply. More...
 
QNetworkReply * getFromNetwork (const swift::misc::network::CUrl &url, int logId, const CallbackSlot &callback, const ProgressSlot &progress, int maxRedirects=DefaultMaxRedirects)
 Request to get network reply, supporting swift::misc::network::CUrlLog. More...
 
QNetworkReply * getFromNetwork (const QNetworkRequest &request, const CallbackSlot &callback, int maxRedirects=DefaultMaxRedirects)
 Request to get network reply. More...
 
QNetworkReply * getFromNetwork (const QNetworkRequest &request, const CallbackSlot &callback, const ProgressSlot &progress, int maxRedirects=DefaultMaxRedirects)
 Request to get network reply. More...
 
QNetworkReply * getFromNetwork (const QNetworkRequest &request, int logId, const CallbackSlot &callback, const ProgressSlot &progress, int maxRedirects=DefaultMaxRedirects)
 Request to get network reply, supporting swift::misc::network::CUrlLog. More...
 
QNetworkReply * deleteResourceFromNetwork (const QNetworkRequest &request, int logId, const CallbackSlot &callback, int maxRedirects=DefaultMaxRedirects)
 Request to delete a network resource from network, supporting swift::misc::network::CUrlLog. More...
 
QNetworkReply * postToNetwork (const QNetworkRequest &request, int logId, const QByteArray &data, const CallbackSlot &callback)
 Post to network. More...
 
QNetworkReply * postToNetwork (const QNetworkRequest &request, int logId, QHttpMultiPart *multiPart, const CallbackSlot &callback)
 Post to network. More...
 
QNetworkReply * headerFromNetwork (const swift::misc::network::CUrl &url, const CallbackSlot &callback, int maxRedirects=NoRedirects)
 Request to get network repy using HTTP's HEADER method. More...
 
QNetworkReply * headerFromNetwork (const QNetworkRequest &request, const CallbackSlot &callback, int maxRedirects=NoRedirects)
 Request to get network repy using HTTP's HEADER method. More...
 
QNetworkReply * downloadFromNetwork (const swift::misc::network::CUrl &url, const QString &saveAsFileName, const swift::misc::CSlot< void(const swift::misc::CStatusMessage &)> &callback, int maxRedirects=DefaultMaxRedirects)
 Download file from network and store it as passed. More...
 
- Public Member Functions inherited from swift::misc::CIdentifiable
const CIdentifieridentifier () const
 Get identifier.
 
void setIdentifier (const CIdentifier &identifier)
 Set identifier, allows to set an external identifier.
 
bool isMyIdentifier (const CIdentifier &otherIdentifier) const
 My identifier?
 
- Public Member Functions inherited from swift::gui::IMainWindowAccess
virtual ~IMainWindowAccess ()
 Destructor.
 
 IMainWindowAccess ()
 Ctor.
 
 IMainWindowAccess (const IMainWindowAccess &)=delete
 Copy constructor.
 
IMainWindowAccessoperator= (const IMainWindowAccess &)=delete
 Copy assignment operator.
 

Protected Member Functions

virtual bool parsingHookIn ()
 Parsing of special CMD args.
 
virtual swift::misc::CStatusMessageList startHookIn ()
 Start facade by cmd arguments.
 
- Protected Member Functions inherited from swift::gui::CGuiApplication
void onCoreFacadeStarted ()
 Called when facade/contexts have been started. More...
 
void onStartUpCompleted ()
 Startup completed. More...
 
void checkNewVersion (bool onlyIfNew)
 Check for a new version (update)
 
QString getFontInfo () const
 Info about font.
 
- Protected Member Functions inherited from swift::core::CApplication
void init (bool withMetadata)
 Init class, allows to init from swift::gui::CGuiApplication as well (pseudo virtual)
 
bool isSet (const QCommandLineOption &option) const
 Flag set or explicitly set to true.
 
swift::misc::CStatusMessageList startCoreFacade ()
 Start the core facade. More...
 
swift::misc::CStatusMessageList startWebDataServices (CWebReaderFlags::WebReader webReader, const db::CDatabaseReaderConfigList &dbReaderConfig)
 Start the web data services. More...
 
- Protected Member Functions inherited from swift::misc::CIdentifiable
 CIdentifiable (const QString &objectName)
 Use literal based object name.
 
 CIdentifiable (QObject *nameProvider)
 Connect with QObject providing the name.
 
 CIdentifiable ()
 Construct without a name.
 
 ~CIdentifiable ()
 Destructor.
 
 CIdentifiable (const CIdentifiable &)=default
 Copy constructor.
 
CIdentifiableoperator= (const CIdentifiable &)=default
 Copy assignment operator.
 

Additional Inherited Members

- Public Types inherited from swift::core::CApplication
using CallbackSlot = swift::misc::CSlot< void(QNetworkReply *)>
 The network reply callback when request is completed.
 
using ProgressSlot = swift::misc::CSlot< void(int, qint64, qint64, const QUrl &)>
 The progress slot.
 
- Signals inherited from swift::gui::CGuiApplication
void styleSheetsChanged ()
 Style sheet changed.
 
void uiObjectTreeReady ()
 Object tree ready (means ui->setupUi() completed)
 
void fontChanged ()
 Font has been changed.
 
void alwaysOnTop (bool onTop)
 always on top
 
- Signals inherited from swift::core::CApplication
void updateInfoAvailable (bool success)
 Update info available (cache, web load)
 
void startUpCompleted (bool success)
 Startup has been completed Will be triggered shortly before starting the event loop.
 
void coreFacadeStarted ()
 Facade started.
 
void webDataServicesStarted (bool success)
 Web data services started.
 
void aboutToShutdown ()
 About to shutdown.
 
- Static Public Member Functions inherited from swift::gui::CGuiApplication
static CGuiApplicationinstance ()
 Similar to. More...
 
static const QStringList & getLogCategories ()
 Own log categories.
 
static const QString & settingsOrganization ()
 Organization string used for settings, is the registry key under windows.
 
static bool removeAllWindowsSwiftRegistryEntries ()
 Remove all registry entries.
 
static bool triggerShowHelp (const QWidget *widget, QEvent *event)
 Static version used with dialogs.
 
static void setWindowIcon (const QPixmap &icon)
 Set icon. More...
 
static QWidget * mainApplicationWidget ()
 Main application window widget. More...
 
static QMainWindow * mainApplicationWindow ()
 Main application window.
 
static swift::gui::IMainWindowAccessmainWindowAccess ()
 Main window access interface.
 
static void exit (int retcode=0)
 Exit application, perform graceful shutdown and exit.
 
static void highDpiScreenSupport (const QString &scaleFactor={})
 Support for high DPI screens. More...
 
static bool isUsingHighDpiScreenSupport ()
 Uses the high DPI support?
 
static QScreen * currentScreen ()
 Current screen.
 
static QRect currentScreenGeometry ()
 Current screen resolution. More...
 
static void modalWindowToFront ()
 Bring any modal dialog to front.
 
static double parseScaleFactor (int argc, char *argv[])
 Parse scale factor if any. More...
 
static QString scaleFactor (int argc, char *argv[])
 Get the scale factor.
 
static QString defaultScaleFactorString ()
 Get a default scale factor.
 
- Static Public Member Functions inherited from swift::core::CApplication
static CApplicationinstance ()
 Similar to. More...
 
static const QStringList & getLogCategories ()
 Own log categories.
 
static swift::misc::CApplicationInfoList getRunningApplications ()
 Information about all running apps (including this one only if exec() has already been called)
 
static bool isApplicationRunning (swift::misc::CApplicationInfo::Application application)
 Is application running?
 
static QString getTemporaryDirectory ()
 Directory for temporary files.
 
static bool registerAsRunning ()
 Register as running. More...
 
static bool unregisterAsRunning ()
 Unregister from running. More...
 
static void exit (int retcode=EXIT_SUCCESS)
 Exit application, perform graceful shutdown and exit.
 
static void processEventsFor (int milliseconds)
 Process all events for some time. More...
 
static QStringList clearCaches ()
 Clear the caches. More...
 
static QStringList arguments ()
 Similar to QCoreApplication::arguments.
 
- Static Public Attributes inherited from swift::core::CApplication
static constexpr int NoRedirects = -1
 network request not allowing redirects
 
static constexpr int NoLogRequestId = -1
 network request without logging
 
static constexpr int DefaultMaxRedirects = 2
 network request, default for max.redirects
 
- Static Protected Member Functions inherited from swift::gui::CGuiApplication
static void registerMetadata ()
 Register metadata.
 
- Static Protected Member Functions inherited from swift::core::CApplication
static int indexOfCommandLineOption (const QCommandLineOption &option, const QStringList &args=CApplication::arguments())
 Is the command line option represented in the given arguments?
 
static void argumentsWithoutOption (const QCommandLineOption &option, QStringList &args)
 Arguments without that given option.
 
static const QString & executable ()
 executable name
 
static void registerMetadata ()
 Register metadata.
 
- Protected Attributes inherited from swift::core::CApplication
QList< QCommandLineOption > m_allOptions
 All registered options.
 
QCommandLineParser m_parser
 cmd parser
 
QCommandLineOption m_cmdHelp { "help" }
 help option
 
QCommandLineOption m_cmdVersion { "version" }
 version option
 
QCommandLineOption m_cmdDBusAddress { "emptyDBus" }
 DBus address.
 
QCommandLineOption m_cmdDevelopment { "dev" }
 Development flag.
 
QCommandLineOption m_cmdClearCache { "clearcache" }
 Clear cache.
 
QCommandLineOption m_cmdTestCrashpad { "testcrashpad" }
 Test a crasphpad upload.
 
QCommandLineOption m_cmdSkipSingleApp { "skipsa" }
 Skip test for single application.
 
bool m_parsed = false
 Parsing accomplished?
 
bool m_started = false
 Started with success?
 
bool m_alreadyRunning = false
 Application already running.
 
std::atomic_bool m_shutdown { false }
 Is being shutdown?
 
std::atomic_bool m_incognito { false }
 Incognito mode?
 
std::atomic_bool m_shutdownInProgress { false }
 shutdown in progress?
 
- Protected Attributes inherited from swift::gui::IMainWindowAccess
components::CLogComponentm_mwaLogComponent = nullptr
 the log component if any
 
CManagedStatusBarm_mwaStatusBar = nullptr
 status bar if any
 
COverlayMessagesFramem_mwaOverlayFrame = nullptr
 overlay messages if any
 

Detailed Description

Specialized GUI application for swift pilot client.

Handles parsing of some specialized CMD line argumenets and startup of core

Definition at line 21 of file swiftguistdapplication.h.


The documentation for this class was generated from the following files: