QmlDesigner: introduce QTC_SHOW_QTQUICKDESIGNER_DEVELOPER_UI

Having these settings only in debug builds was annoying for developer.
Because debug builds of Qt Design Studio are unusable slow.

Change-Id: I3b959e1ff1655115c53ddbf8ba748df7cdfb6204
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
Tim Jenssen
2025-05-12 15:41:12 +02:00
parent 472b888112
commit e3b5a16bc3
2 changed files with 12 additions and 14 deletions

View File

@@ -9,6 +9,7 @@
#include "../iwizardfactory.h" #include "../iwizardfactory.h"
#include <utils/algorithm.h> #include <utils/algorithm.h>
#include <utils/environment.h>
#include <utils/fancylineedit.h> #include <utils/fancylineedit.h>
#include <utils/guiutils.h> #include <utils/guiutils.h>
#include <utils/hostosinfo.h> #include <utils/hostosinfo.h>
@@ -253,16 +254,13 @@ protected:
static bool categoryVisible([[maybe_unused]] const Id &id) static bool categoryVisible([[maybe_unused]] const Id &id)
{ {
#ifdef QT_NO_DEBUG if (!Utils::qtcEnvironmentVariableIsSet("QTC_SHOW_QTQUICKDESIGNER_DEVELOPER_UI")) {
static QStringList list static QStringList list
= Core::ICore::settings()->value("HideOptionCategories").toStringList(); = Core::ICore::settings()->value("HideOptionCategories").toStringList();
if (anyOf(list, [id](const QString &str) { return id.toString().contains(str); })) if (anyOf(list, [id](const QString &str) { return id.toString().contains(str); }))
return false; return false;
#else }
Q_UNUSED(id);
#endif
return true; return true;
} }

View File

@@ -18,6 +18,7 @@
#include <utils/layoutbuilder.h> #include <utils/layoutbuilder.h>
#include <utils/pathchooser.h> #include <utils/pathchooser.h>
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
#include <utils/environment.h>
#include <QApplication> #include <QApplication>
#include <QCheckBox> #include <QCheckBox>
@@ -463,11 +464,10 @@ void SettingsPageWidget::setSettings(const DesignerSettings &settings)
m_askBeforeDeletingAssetCheckBox->setChecked( m_askBeforeDeletingAssetCheckBox->setChecked(
settings.value(DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET).toBool()); settings.value(DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET).toBool());
#ifdef QT_DEBUG const auto showDebugSettings = settings.value(DesignerSettingsKey::SHOW_DEBUG_SETTINGS,
const auto showDebugSettings = true; Utils::qtcEnvironmentVariableIsSet("QTC_SHOW_QTQUICKDESIGNER_DEVELOPER_UI")
#else ).toBool();
const auto showDebugSettings = settings.value(DesignerSettingsKey::SHOW_DEBUG_SETTINGS).toBool();
#endif
const bool showAdvancedFeatures = !Core::ICore::isQtDesignStudio() || showDebugSettings; const bool showAdvancedFeatures = !Core::ICore::isQtDesignStudio() || showDebugSettings;
m_qmlPuppetGroupBox->setVisible(showAdvancedFeatures); m_qmlPuppetGroupBox->setVisible(showAdvancedFeatures);
m_debugGroupBox->setVisible(showAdvancedFeatures); m_debugGroupBox->setVisible(showAdvancedFeatures);