Qt Utilities: resources/resources.h Source File

Qt Utilities 6.19.1 Common Qt related C++ classes and routines used by my applications such as dialogs, widgets and models

Loading...
Searching...
No Matches
resources.h
Go to the documentation of this file.
1#ifndef APPLICATION_UTILITIES_RESOURCES_H
2#define APPLICATION_UTILITIES_RESOURCES_H
3
4#include "../global.h"
5
6#include <QString>
7#include <QtContainerFwd>
8#include <QtGlobal>
9
10#include <initializer_list>
11#include <memory>
12
13QT_FORWARD_DECLARE_CLASS(QString)
14QT_FORWARD_DECLARE_CLASS(QSettings)
15#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
16QT_FORWARD_DECLARE_CLASS(QStringList)
17#endif
18
25#define SET_QT_DESKTOP_FILE_NAME
26#if defined(Q_OS_LINUX) && defined(qGuiApp) && defined(APP_ID)
27#undef SET_QT_DESKTOP_FILE_NAME
28#define SET_QT_DESKTOP_FILE_NAME QGuiApplication::setDesktopFileName(QStringLiteral(APP_ID));
29#endif
30
36#define SET_QT_APPLICATION_INFO \
37 QCoreApplication::setOrganizationName(QStringLiteral(APP_AUTHOR)); \
38 QCoreApplication::setOrganizationDomain(QStringLiteral(APP_DOMAIN)); \
39 QCoreApplication::setApplicationName(QStringLiteral(APP_NAME)); \
40 QCoreApplication::setApplicationVersion(QStringLiteral(APP_VERSION)); \
41 SET_QT_DESKTOP_FILE_NAME \
42 ::QtUtilities::setupCommonQtApplicationAttributes()
43
47#define LOAD_QT_TRANSLATIONS \
48 QtUtilities::TranslationFiles::loadQtTranslationFile(QT_TRANSLATION_FILES); \
49 QtUtilities::TranslationFiles::loadApplicationTranslationFile(QStringLiteral(PROJECT_CONFIG_NAME), APP_SPECIFIC_QT_TRANSLATION_FILES)
50
51namespace QtUtilities {
52
53 namespace QtUtilitiesResources {
54
55 QT_UTILITIES_EXPORT void init();
56 QT_UTILITIES_EXPORT void cleanup();
57} // namespace QtUtilitiesResources
58
59 namespace TranslationFiles {
60
61 QT_UTILITIES_EXPORT QString &additionalTranslationFilePath();
62 QT_UTILITIES_EXPORT void loadQtTranslationFile(std::initializer_list<QString> repositoryNames);
63 QT_UTILITIES_EXPORT void loadQtTranslationFile(std::initializer_list<QString> repositoryNames, const QString &localeName);
64 QT_UTILITIES_EXPORT void loadApplicationTranslationFile(const QString &configName, const QString &applicationName);
65 QT_UTILITIES_EXPORT void loadApplicationTranslationFile(const QString &configName, const QString &applicationName, const QString &localeName);
66 QT_UTILITIES_EXPORT void loadApplicationTranslationFile(const QString &configName, const std::initializer_list<QString> &applicationNames);
67 QT_UTILITIES_EXPORT void loadApplicationTranslationFile(
68 const QString &configName, const std::initializer_list<QString> &applicationNames, const QString &localeName);
69 QT_UTILITIES_EXPORT void clearTranslationFiles();
70} // namespace TranslationFiles
71
72 namespace ApplicationInstances {
73
74#if defined(QT_UTILITIES_GUI_QTWIDGETS)
75 QT_UTILITIES_EXPORT bool hasWidgetsApp();
76#endif
77#if defined(QT_UTILITIES_GUI_QTWIDGETS) || defined(QT_UTILITIES_GUI_QTQUICK)
78 QT_UTILITIES_EXPORT bool hasGuiApp();
79#endif
80 QT_UTILITIES_EXPORT bool hasCoreApp();
81} // namespace ApplicationInstances
82
83 QT_UTILITIES_EXPORT void setupCommonQtApplicationAttributes();
84 QT_UTILITIES_EXPORT std::unique_ptr<QSettings> getSettings(const QString &organization, const QString &application = QString());
85 QT_UTILITIES_EXPORT QString errorMessageForSettings(const QSettings &settings);
86 QT_UTILITIES_EXPORT void loadSettingsWithLogging(QSettings &settings);
87 QT_UTILITIES_EXPORT void saveSettingsWithLogging(QSettings &settings);
88 QT_UTILITIES_EXPORT void deletePipelineCacheIfNeeded();
89
90} // namespace QtUtilities
91
92#endif // APPLICATION_UTILITIES_RESOURCES_H
global.h
QT_UTILITIES_EXPORT
#define QT_UTILITIES_EXPORT
Marks the symbol to be exported by the qtutilities library.
Definition global.h:14
QtUtilities::ApplicationInstances
Convenience functions to check whether a QCoreApplication/QGuiApplication/QApplication singleton has ...
Definition resources.h:72
QtUtilities::ApplicationInstances::hasCoreApp
QT_UTILITIES_EXPORT bool hasCoreApp()
Returns whether a QCoreApplication has been instantiated yet.
Definition resources.cpp:378
QtUtilities::QtUtilitiesResources
Functions for using the resources provided by this library.
Definition resources.h:53
QtUtilities::QtUtilitiesResources::init
QT_UTILITIES_EXPORT void init()
Initiates the resources used and provided by this library.
Definition resources.cpp:60
QtUtilities::QtUtilitiesResources::cleanup
QT_UTILITIES_EXPORT void cleanup()
Frees the resources used and provided by this library.
Definition resources.cpp:69
QtUtilities::TranslationFiles
Convenience functions to load translations for Qt and the application.
Definition resources.h:59
QtUtilities::TranslationFiles::loadQtTranslationFile
QT_UTILITIES_EXPORT void loadQtTranslationFile(std::initializer_list< QString > repositoryNames)
Loads and installs the appropriate Qt translation file for the current locale.
Definition resources.cpp:123
QtUtilities::TranslationFiles::clearTranslationFiles
QT_UTILITIES_EXPORT void clearTranslationFiles()
Clears all translation files previously loaded via the load-functions in this namespace.
Definition resources.cpp:338
QtUtilities::TranslationFiles::loadApplicationTranslationFile
QT_UTILITIES_EXPORT void loadApplicationTranslationFile(const QString &configName, const QString &applicationName)
Loads and installs the appropriate application translation file for the current locale.
Definition resources.cpp:210
QtUtilities::TranslationFiles::additionalTranslationFilePath
QT_UTILITIES_EXPORT QString & additionalTranslationFilePath()
Allows to set an additional search path for translation files.
Definition resources.cpp:89
QtUtilities
!
Definition trylocker.h:8
QtUtilities::loadSettingsWithLogging
QT_UTILITIES_EXPORT void loadSettingsWithLogging(QSettings &settings)
Loads settings and logs a corresponding message if the env variable QT_DEBUG_SETTINGS is set.
Definition resources.cpp:458
QtUtilities::getSettings
QT_UTILITIES_EXPORT std::unique_ptr< QSettings > getSettings(const QString &organization, const QString &application=QString())
Returns the settings object for the specified organization and application.
Definition resources.cpp:431
QtUtilities::deletePipelineCacheIfNeeded
QT_UTILITIES_EXPORT void deletePipelineCacheIfNeeded()
Deletes the Qt Quick pipeline cache on platforms where this is needed to workaround issues with the c...
Definition resources.cpp:513
QtUtilities::setupCommonQtApplicationAttributes
QT_UTILITIES_EXPORT void setupCommonQtApplicationAttributes()
Sets Qt application attributes which are commonly used within my Qt applications.
Definition resources.cpp:390
QtUtilities::saveSettingsWithLogging
QT_UTILITIES_EXPORT void saveSettingsWithLogging(QSettings &settings)
Saves settings and logs a corresponding message if the env variable QT_DEBUG_SETTINGS is set.
Definition resources.cpp:475
QtUtilities::errorMessageForSettings
QT_UTILITIES_EXPORT QString errorMessageForSettings(const QSettings &settings)
Returns an error message for the specified settings or an empty string if there's no error.
Definition resources.cpp:492