Qt Utilities 6.14.0
Common Qt related C++ classes and routines used by my applications such as dialogs, widgets and models
Loading...
Searching...
No Matches
qtconfigarguments.h
Go to the documentation of this file.
1#ifndef APPLICATION_UTILITIES_QTCONFIGARGUMENTS_H
2#define APPLICATION_UTILITIES_QTCONFIGARGUMENTS_H
3
4#include "../global.h"
5
6#include <c++utilities/application/argumentparser.h>
7
8#ifdef QT_UTILITIES_GUI_QTQUICK
9#include <QQuickStyle>
10#include <QString>
11
12#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
13#if defined(PLATFORM_ANDROID)
14#define QT_UTILITIES_DEFAULT_QQC2_STYLE "Material"
15#elif defined(PLATFORM_WINDOWS)
16#define QT_UTILITIES_DEFAULT_QQC2_STYLE "Universal"
17#endif
18#else
19#if defined(PLATFORM_ANDROID)
20#define QT_UTILITIES_DEFAULT_QQC2_STYLE "material"
21#elif defined(PLATFORM_WINDOWS)
22#define QT_UTILITIES_DEFAULT_QQC2_STYLE "universal"
23#endif
24#endif
25
26#endif
27
28namespace CppUtilities {
29
31public:
33
34 Argument &qtWidgetsGuiArg();
35 Argument &qtQuickGuiArg();
36 Argument &languageArg();
37
38 bool areQtGuiArgsPresent() const;
39 void applySettings(bool preventApplyingDefaultFont = false) const;
40#ifdef QT_UTILITIES_GUI_QTQUICK
41 void applySettingsForQuickGui() const;
42#endif
43
44private:
45 Argument m_qtWidgetsGuiArg;
46 Argument m_qtQuickGuiArg;
47 Argument m_lngArg;
48 Argument m_qmlDebuggerArg;
49 Argument m_widgetsStyleArg;
50 Argument m_quickControls2StyleArg;
51 Argument m_iconThemeArg;
52 Argument m_fontArg;
53 Argument m_libraryPathsArg;
54 Argument m_platformThemeArg;
55 Argument m_sceneGraphRenderLoopArg;
56};
57
62{
63 return m_qtWidgetsGuiArg;
64}
65
70{
71 return m_qtQuickGuiArg;
72}
73
78{
79 return m_lngArg;
80}
81
86{
87 return m_qtWidgetsGuiArg.isPresent() || m_qtQuickGuiArg.isPresent();
88}
89
90#ifdef QT_UTILITIES_GUI_QTQUICK
94inline void QtConfigArguments::applySettingsForQuickGui() const
95{
96 if (m_quickControls2StyleArg.isPresent()) {
97 QQuickStyle::setStyle(QString::fromLocal8Bit(m_quickControls2StyleArg.values().front()));
98 }
99#ifdef QT_UTILITIES_DEFAULT_QQC2_STYLE
100 else if (qEnvironmentVariableIsEmpty("QT_QUICK_CONTROLS_STYLE")) {
101 QQuickStyle::setStyle(QStringLiteral(QT_UTILITIES_DEFAULT_QQC2_STYLE));
102 }
103#endif // QT_UTILITIES_DEFAULT_QQC2_STYLE
104}
105#endif // QT_UTILITIES_GUI_QTQUICK
106
107} // namespace CppUtilities
108
109#endif // APPLICATION_UTILITIES_QTCONFIGARGUMENTS_H
110
111#ifdef QT_CONFIG_ARGUMENTS
112#undef QT_CONFIG_ARGUMENTS
113#endif
114#define QT_CONFIG_ARGUMENTS CppUtilities::QtConfigArguments
Argument & qtWidgetsGuiArg()
Returns the argument for the Qt Widgets GUI.
Argument & qtQuickGuiArg()
Returns the argument for the Qt Quick GUI.
Argument & languageArg()
Returns the language argument.
bool areQtGuiArgsPresent() const
Returns whether at least one of the GUI arguments is present.
#define QT_UTILITIES_EXPORT
Marks the symbol to be exported by the qtutilities library.
Definition global.h:14
The CppUtilities namespace contains addons to the c++utilities library provided by the qtutilities li...