diff options
author | Samuel Ghinet <samuel.ghinet@qt.io> | 2021-10-13 09:04:16 +0300 |
---|---|---|
committer | Samuel Ghinet <samuel.ghinet@qt.io> | 2021-10-13 15:21:51 +0000 |
commit | 8aa68fb8e4215b823a790f1fd39d9dc4f38b0945 (patch) | |
tree | aa31ac40e3a80daff55f3bd7c88f7681ca3ab239 | |
parent | 2cc28dea65846153d16c213283ffac7af530590d (diff) |
Make use of font icons for the wizards
Qt Design Studio will be using font icons to display project types (wizards) in
the New Project dialog box, rather than .png icons. The unicode values will be
saved in the wizard.json files as "fontIconCode". We need a way to access that
value in code.
Task-number: QDS-4490
Change-Id: I5dbcc522a707c288ee1f05ab6ec1cb24bcd75025
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
-rw-r--r-- | src/plugins/coreplugin/iwizardfactory.h | 3 | ||||
-rw-r--r-- | src/plugins/projectexplorer/jsonwizard/jsonwizardfactory.cpp | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/coreplugin/iwizardfactory.h b/src/plugins/coreplugin/iwizardfactory.h index 1e27ec6c90..0cb1b96d43 100644 --- a/src/plugins/coreplugin/iwizardfactory.h +++ b/src/plugins/coreplugin/iwizardfactory.h @@ -64,6 +64,7 @@ public: Utils::Id id() const { return m_id; } WizardKind kind() const { return m_supportedProjectTypes.isEmpty() ? FileWizard : ProjectWizard; } QIcon icon() const { return m_icon; } + QString fontIcondCode() const { return m_fontIconCode; } QString description() const { return m_description; } QString displayName() const { return m_displayName; } QString category() const { return m_category; } @@ -78,6 +79,7 @@ public: void setId(const Utils::Id id) { m_id = id; } void setSupportedProjectTypes(const QSet<Utils::Id> &projectTypes) { m_supportedProjectTypes = projectTypes; } void setIcon(const QIcon &icon, const QString &iconText = {}); + void setFontIconCode(const QString &code) { m_fontIconCode = code; } void setDescription(const QString &description) { m_description = description; } void setDisplayName(const QString &displayName) { m_displayName = displayName; } void setCategory(const QString &category) { m_category = category; } @@ -135,6 +137,7 @@ private: QAction *m_action = nullptr; QIcon m_icon; + QString m_fontIconCode; QString m_description; QString m_displayName; QString m_category; diff --git a/src/plugins/projectexplorer/jsonwizard/jsonwizardfactory.cpp b/src/plugins/projectexplorer/jsonwizard/jsonwizardfactory.cpp index 9aa16ff051..ac73d2a047 100644 --- a/src/plugins/projectexplorer/jsonwizard/jsonwizardfactory.cpp +++ b/src/plugins/projectexplorer/jsonwizard/jsonwizardfactory.cpp @@ -72,6 +72,7 @@ const char CATEGORY_NAME_KEY[] = "trDisplayCategory"; const char DISPLAY_NAME_KEY[] = "trDisplayName"; const char ICON_KEY[] = "icon"; const char ICON_TEXT_KEY[] = "iconText"; +const char FONT_ICON_CODE_KEY[] = "fontIconCode"; const char IMAGE_KEY[] = "image"; const char ICON_KIND_KEY[] = "iconKind"; const char DESCRIPTION_KEY[] = "trDescription"; @@ -597,6 +598,9 @@ bool JsonWizardFactory::initialize(const QVariantMap &data, const FilePath &base : QIcon(iconPath.toString()), iconText); + const QString fontIconCode = data.value(QLatin1String(FONT_ICON_CODE_KEY)).toString(); + setFontIconCode(fontIconCode); + strVal = data.value(QLatin1String(IMAGE_KEY)).toString(); if (!strVal.isEmpty()) { const FilePath imagePath = baseDir.resolvePath(strVal); |