forked from qt-creator/qt-creator
qmldesigner: make DesignerSettings thread save
Change-Id: I07074b35456533e9729644ef3647803d477bd6f1 Reviewed-by: Marco Bubke <marco.bubke@qt.io>
This commit is contained in:
@@ -109,7 +109,7 @@ void AssetsLibraryModel::toggleExpandAll(bool expand)
|
|||||||
|
|
||||||
void AssetsLibraryModel::deleteFiles(const QStringList &filePaths)
|
void AssetsLibraryModel::deleteFiles(const QStringList &filePaths)
|
||||||
{
|
{
|
||||||
bool askBeforeDelete = DesignerSettings::getValue(
|
bool askBeforeDelete = QmlDesignerPlugin::settings().value(
|
||||||
DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET).toBool();
|
DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET).toBool();
|
||||||
bool assetDelete = true;
|
bool assetDelete = true;
|
||||||
|
|
||||||
@@ -129,7 +129,7 @@ void AssetsLibraryModel::deleteFiles(const QStringList &filePaths)
|
|||||||
assetDelete = false;
|
assetDelete = false;
|
||||||
|
|
||||||
if (cb.isChecked())
|
if (cb.isChecked())
|
||||||
DesignerSettings::setValue(DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET, false);
|
QmlDesignerPlugin::settings().insert(DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (assetDelete) {
|
if (assetDelete) {
|
||||||
|
@@ -145,7 +145,7 @@ Utils::CrumblePath *CrumbleBar::crumblePath()
|
|||||||
bool CrumbleBar::showSaveDialog()
|
bool CrumbleBar::showSaveDialog()
|
||||||
{
|
{
|
||||||
bool canceled = false;
|
bool canceled = false;
|
||||||
bool alwaysSave = DesignerSettings::getValue(DesignerSettingsKey::ALWAYS_SAVE_IN_CRUMBLEBAR).toBool();
|
bool alwaysSave = QmlDesignerPlugin::settings().value(DesignerSettingsKey::ALWAYS_SAVE_IN_CRUMBLEBAR).toBool();
|
||||||
if (alwaysSave) {
|
if (alwaysSave) {
|
||||||
Core::DocumentManager::saveModifiedDocumentSilently(currentDesignDocument()->editor()->document());
|
Core::DocumentManager::saveModifiedDocumentSilently(currentDesignDocument()->editor()->document());
|
||||||
} else {
|
} else {
|
||||||
@@ -155,7 +155,7 @@ bool CrumbleBar::showSaveDialog()
|
|||||||
tr("Always save when leaving subcomponent"),
|
tr("Always save when leaving subcomponent"),
|
||||||
&alwaysSave);
|
&alwaysSave);
|
||||||
|
|
||||||
DesignerSettings::setValue(DesignerSettingsKey::ALWAYS_SAVE_IN_CRUMBLEBAR, alwaysSave);
|
QmlDesignerPlugin::settings().insert(DesignerSettingsKey::ALWAYS_SAVE_IN_CRUMBLEBAR, alwaysSave);
|
||||||
}
|
}
|
||||||
return !canceled;
|
return !canceled;
|
||||||
}
|
}
|
||||||
|
@@ -96,8 +96,6 @@ ConnectionViewWidget::ConnectionViewWidget(QWidget *parent) :
|
|||||||
for (auto toolButton : buttons)
|
for (auto toolButton : buttons)
|
||||||
ui->toolBar->addWidget(toolButton);
|
ui->toolBar->addWidget(toolButton);
|
||||||
|
|
||||||
auto settings = QmlDesignerPlugin::instance()->settings();
|
|
||||||
|
|
||||||
if (!QmlProjectManager::QmlProject::isQtDesignStudio())
|
if (!QmlProjectManager::QmlProject::isQtDesignStudio())
|
||||||
ui->tabBar->addTab(tr("Backends", "Title of dynamic properties view"));
|
ui->tabBar->addTab(tr("Backends", "Title of dynamic properties view"));
|
||||||
|
|
||||||
|
@@ -44,13 +44,13 @@ const QString lineBreak = QStringLiteral("<br>");
|
|||||||
|
|
||||||
bool isDebugViewEnabled()
|
bool isDebugViewEnabled()
|
||||||
{
|
{
|
||||||
return QmlDesigner::DesignerSettings::getValue(
|
return QmlDesigner::QmlDesignerPlugin::settings().value(
|
||||||
QmlDesigner::DesignerSettingsKey::ENABLE_DEBUGVIEW).toBool();
|
QmlDesigner::DesignerSettingsKey::ENABLE_DEBUGVIEW).toBool();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isDebugViewShown()
|
bool isDebugViewShown()
|
||||||
{
|
{
|
||||||
return QmlDesigner::DesignerSettings::getValue(
|
return QmlDesigner::QmlDesignerPlugin::settings().value(
|
||||||
QmlDesigner::DesignerSettingsKey::SHOW_DEBUGVIEW).toBool();
|
QmlDesigner::DesignerSettingsKey::SHOW_DEBUGVIEW).toBool();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -100,7 +100,7 @@ void DebugViewWidget::setDebugViewEnabled(bool b)
|
|||||||
|
|
||||||
void DebugViewWidget::enabledCheckBoxToggled(bool b)
|
void DebugViewWidget::enabledCheckBoxToggled(bool b)
|
||||||
{
|
{
|
||||||
DesignerSettings::setValue(DesignerSettingsKey::WARNING_FOR_FEATURES_IN_DESIGNER, b);
|
QmlDesignerPlugin::settings().insert(DesignerSettingsKey::WARNING_FOR_FEATURES_IN_DESIGNER, b);
|
||||||
}
|
}
|
||||||
|
|
||||||
} //namespace Internal
|
} //namespace Internal
|
||||||
|
@@ -535,7 +535,7 @@ void Edit3DView::createEdit3DActions()
|
|||||||
m_particlesRestartAction->action()->setEnabled(particlemode);
|
m_particlesRestartAction->action()->setEnabled(particlemode);
|
||||||
if (m_seeker)
|
if (m_seeker)
|
||||||
m_seeker->setEnabled(false);
|
m_seeker->setEnabled(false);
|
||||||
QmlDesigner::DesignerSettings::setValue("particleMode", particlemode);
|
QmlDesignerPlugin::settings().insert("particleMode", particlemode);
|
||||||
setCurrentStateNode(rootModelNode());
|
setCurrentStateNode(rootModelNode());
|
||||||
resetPuppet();
|
resetPuppet();
|
||||||
};
|
};
|
||||||
|
@@ -40,7 +40,7 @@ class Edit3DViewConfig
|
|||||||
public:
|
public:
|
||||||
static QList<QColor> load(const char key[])
|
static QList<QColor> load(const char key[])
|
||||||
{
|
{
|
||||||
QVariant var = DesignerSettings::getValue(key);
|
QVariant var = QmlDesignerPlugin::settings().value(key);
|
||||||
|
|
||||||
if (!var.isValid())
|
if (!var.isValid())
|
||||||
return {};
|
return {};
|
||||||
@@ -91,7 +91,7 @@ private:
|
|||||||
|
|
||||||
static void saveVariant(const QByteArray &key, const QVariant &colorConfig)
|
static void saveVariant(const QByteArray &key, const QVariant &colorConfig)
|
||||||
{
|
{
|
||||||
DesignerSettings::setValue(key, colorConfig);
|
QmlDesignerPlugin::settings().insert(key, colorConfig);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -95,12 +95,12 @@ FormEditorItem* FormEditorScene::itemForQmlItemNode(const QmlItemNode &qmlItemNo
|
|||||||
|
|
||||||
double FormEditorScene::canvasWidth() const
|
double FormEditorScene::canvasWidth() const
|
||||||
{
|
{
|
||||||
return DesignerSettings::getValue(DesignerSettingsKey::CANVASWIDTH).toDouble();
|
return QmlDesignerPlugin::settings().value(DesignerSettingsKey::CANVASWIDTH).toDouble();
|
||||||
}
|
}
|
||||||
|
|
||||||
double FormEditorScene::canvasHeight() const
|
double FormEditorScene::canvasHeight() const
|
||||||
{
|
{
|
||||||
return DesignerSettings::getValue(DesignerSettingsKey::CANVASHEIGHT).toDouble();
|
return QmlDesignerPlugin::settings().value(DesignerSettingsKey::CANVASHEIGHT).toDouble();
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<FormEditorItem*> FormEditorScene::itemsForQmlItemNodes(const QList<QmlItemNode> &nodeList) const
|
QList<FormEditorItem*> FormEditorScene::itemsForQmlItemNodes(const QList<QmlItemNode> &nodeList) const
|
||||||
|
@@ -36,6 +36,7 @@
|
|||||||
#include "formeditorscene.h"
|
#include "formeditorscene.h"
|
||||||
#include "abstractcustomtool.h"
|
#include "abstractcustomtool.h"
|
||||||
|
|
||||||
|
#include <qmldesignerplugin.h>
|
||||||
#include <bindingproperty.h>
|
#include <bindingproperty.h>
|
||||||
#include <variantproperty.h>
|
#include <variantproperty.h>
|
||||||
#include <designersettings.h>
|
#include <designersettings.h>
|
||||||
@@ -685,8 +686,8 @@ void FormEditorView::instancesCompleted(const QVector<ModelNode> &completedNodeL
|
|||||||
void FormEditorView::instanceInformationsChanged(const QMultiHash<ModelNode, InformationName> &informationChangedHash)
|
void FormEditorView::instanceInformationsChanged(const QMultiHash<ModelNode, InformationName> &informationChangedHash)
|
||||||
{
|
{
|
||||||
QList<FormEditorItem*> changedItems;
|
QList<FormEditorItem*> changedItems;
|
||||||
const int rootElementInitWidth = DesignerSettings::getValue(DesignerSettingsKey::ROOT_ELEMENT_INIT_WIDTH).toInt();
|
const int rootElementInitWidth = QmlDesignerPlugin::settings().value(DesignerSettingsKey::ROOT_ELEMENT_INIT_WIDTH).toInt();
|
||||||
const int rootElementInitHeight = DesignerSettings::getValue(DesignerSettingsKey::ROOT_ELEMENT_INIT_HEIGHT).toInt();
|
const int rootElementInitHeight = QmlDesignerPlugin::settings().value(DesignerSettingsKey::ROOT_ELEMENT_INIT_HEIGHT).toInt();
|
||||||
|
|
||||||
QList<ModelNode> informationChangedNodes = Utils::filtered(informationChangedHash.keys(), [](const ModelNode &node) {
|
QList<ModelNode> informationChangedNodes = Utils::filtered(informationChangedHash.keys(), [](const ModelNode &node) {
|
||||||
return QmlItemNode::isValidQmlItemNode(node);
|
return QmlItemNode::isValidQmlItemNode(node);
|
||||||
|
@@ -479,12 +479,12 @@ ToolBox *FormEditorWidget::toolBox() const
|
|||||||
|
|
||||||
double FormEditorWidget::spacing() const
|
double FormEditorWidget::spacing() const
|
||||||
{
|
{
|
||||||
return DesignerSettings::getValue(DesignerSettingsKey::ITEMSPACING).toDouble();
|
return QmlDesignerPlugin::settings().value(DesignerSettingsKey::ITEMSPACING).toDouble();
|
||||||
}
|
}
|
||||||
|
|
||||||
double FormEditorWidget::containerPadding() const
|
double FormEditorWidget::containerPadding() const
|
||||||
{
|
{
|
||||||
return DesignerSettings::getValue(DesignerSettingsKey::CONTAINERPADDING).toDouble();
|
return QmlDesignerPlugin::settings().value(DesignerSettingsKey::CONTAINERPADDING).toDouble();
|
||||||
}
|
}
|
||||||
|
|
||||||
void FormEditorWidget::contextHelp(const Core::IContext::HelpCallback &callback) const
|
void FormEditorWidget::contextHelp(const Core::IContext::HelpCallback &callback) const
|
||||||
|
@@ -285,7 +285,7 @@ void ItemLibraryWidget::goIntoComponent(const QString &source)
|
|||||||
|
|
||||||
void ItemLibraryWidget::delayedUpdateModel()
|
void ItemLibraryWidget::delayedUpdateModel()
|
||||||
{
|
{
|
||||||
static bool disableTimer = DesignerSettings::getValue(DesignerSettingsKey::DISABLE_ITEM_LIBRARY_UPDATE_TIMER).toBool();
|
static bool disableTimer = QmlDesignerPlugin::settings().value(DesignerSettingsKey::DISABLE_ITEM_LIBRARY_UPDATE_TIMER).toBool();
|
||||||
if (disableTimer)
|
if (disableTimer)
|
||||||
updateModel();
|
updateModel();
|
||||||
else
|
else
|
||||||
|
@@ -158,10 +158,10 @@ void NavigatorView::modelAttached(Model *model)
|
|||||||
|
|
||||||
QTimer::singleShot(0, this, [this, treeView]() {
|
QTimer::singleShot(0, this, [this, treeView]() {
|
||||||
m_currentModelInterface->setFilter(
|
m_currentModelInterface->setFilter(
|
||||||
DesignerSettings::getValue(DesignerSettingsKey::NAVIGATOR_SHOW_ONLY_VISIBLE_ITEMS).toBool());
|
QmlDesignerPlugin::settings().value(DesignerSettingsKey::NAVIGATOR_SHOW_ONLY_VISIBLE_ITEMS).toBool());
|
||||||
|
|
||||||
m_currentModelInterface->setOrder(
|
m_currentModelInterface->setOrder(
|
||||||
DesignerSettings::getValue(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool());
|
QmlDesignerPlugin::settings().value(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool());
|
||||||
|
|
||||||
// Expand everything to begin with to ensure model node to index cache is populated
|
// Expand everything to begin with to ensure model node to index cache is populated
|
||||||
treeView->expandAll();
|
treeView->expandAll();
|
||||||
@@ -528,7 +528,7 @@ void NavigatorView::rightButtonClicked()
|
|||||||
return; //Semantics are unclear for multi selection.
|
return; //Semantics are unclear for multi selection.
|
||||||
|
|
||||||
bool blocked = blockSelectionChangedSignal(true);
|
bool blocked = blockSelectionChangedSignal(true);
|
||||||
bool reverse = DesignerSettings::getValue(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
bool reverse = QmlDesignerPlugin::settings().value(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
||||||
|
|
||||||
for (const ModelNode &node : selectedModelNodes()) {
|
for (const ModelNode &node : selectedModelNodes()) {
|
||||||
if (!node.isRootNode() && node.parentProperty().isNodeListProperty() && node.parentProperty().count() > 1) {
|
if (!node.isRootNode() && node.parentProperty().isNodeListProperty() && node.parentProperty().count() > 1) {
|
||||||
@@ -568,7 +568,7 @@ void NavigatorView::rightButtonClicked()
|
|||||||
void NavigatorView::upButtonClicked()
|
void NavigatorView::upButtonClicked()
|
||||||
{
|
{
|
||||||
bool blocked = blockSelectionChangedSignal(true);
|
bool blocked = blockSelectionChangedSignal(true);
|
||||||
bool reverse = DesignerSettings::getValue(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
bool reverse = QmlDesignerPlugin::settings().value(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
||||||
|
|
||||||
if (reverse)
|
if (reverse)
|
||||||
moveNodesDown(selectedModelNodes());
|
moveNodesDown(selectedModelNodes());
|
||||||
@@ -582,7 +582,7 @@ void NavigatorView::upButtonClicked()
|
|||||||
void NavigatorView::downButtonClicked()
|
void NavigatorView::downButtonClicked()
|
||||||
{
|
{
|
||||||
bool blocked = blockSelectionChangedSignal(true);
|
bool blocked = blockSelectionChangedSignal(true);
|
||||||
bool reverse = DesignerSettings::getValue(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
bool reverse = QmlDesignerPlugin::settings().value(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
||||||
|
|
||||||
if (reverse)
|
if (reverse)
|
||||||
moveNodesUp(selectedModelNodes());
|
moveNodesUp(selectedModelNodes());
|
||||||
@@ -597,14 +597,14 @@ void NavigatorView::filterToggled(bool flag)
|
|||||||
{
|
{
|
||||||
m_currentModelInterface->setFilter(flag);
|
m_currentModelInterface->setFilter(flag);
|
||||||
treeWidget()->expandAll();
|
treeWidget()->expandAll();
|
||||||
DesignerSettings::setValue(DesignerSettingsKey::NAVIGATOR_SHOW_ONLY_VISIBLE_ITEMS, flag);
|
QmlDesignerPlugin::settings().insert(DesignerSettingsKey::NAVIGATOR_SHOW_ONLY_VISIBLE_ITEMS, flag);
|
||||||
}
|
}
|
||||||
|
|
||||||
void NavigatorView::reverseOrderToggled(bool flag)
|
void NavigatorView::reverseOrderToggled(bool flag)
|
||||||
{
|
{
|
||||||
m_currentModelInterface->setOrder(flag);
|
m_currentModelInterface->setOrder(flag);
|
||||||
treeWidget()->expandAll();
|
treeWidget()->expandAll();
|
||||||
DesignerSettings::setValue(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER, flag);
|
QmlDesignerPlugin::settings().insert(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER, flag);
|
||||||
}
|
}
|
||||||
|
|
||||||
void NavigatorView::textFilterChanged(const QString &text)
|
void NavigatorView::textFilterChanged(const QString &text)
|
||||||
|
@@ -138,7 +138,7 @@ QList<QToolButton *> NavigatorWidget::createToolBarWidgets()
|
|||||||
auto filterAction = new QAction(tr("Show Only Visible Components"), nullptr);
|
auto filterAction = new QAction(tr("Show Only Visible Components"), nullptr);
|
||||||
filterAction->setCheckable(true);
|
filterAction->setCheckable(true);
|
||||||
|
|
||||||
bool filterFlag = DesignerSettings::getValue(DesignerSettingsKey::NAVIGATOR_SHOW_ONLY_VISIBLE_ITEMS).toBool();
|
bool filterFlag = QmlDesignerPlugin::settings().value(DesignerSettingsKey::NAVIGATOR_SHOW_ONLY_VISIBLE_ITEMS).toBool();
|
||||||
filterAction->setChecked(filterFlag);
|
filterAction->setChecked(filterFlag);
|
||||||
|
|
||||||
connect(filterAction, &QAction::toggled, this, &NavigatorWidget::filterToggled);
|
connect(filterAction, &QAction::toggled, this, &NavigatorWidget::filterToggled);
|
||||||
@@ -147,7 +147,7 @@ QList<QToolButton *> NavigatorWidget::createToolBarWidgets()
|
|||||||
auto reverseAction = new QAction(tr("Reverse Component Order"), nullptr);
|
auto reverseAction = new QAction(tr("Reverse Component Order"), nullptr);
|
||||||
reverseAction->setCheckable(true);
|
reverseAction->setCheckable(true);
|
||||||
|
|
||||||
bool reverseFlag = DesignerSettings::getValue(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
bool reverseFlag = QmlDesignerPlugin::settings().value(DesignerSettingsKey::NAVIGATOR_REVERSE_ITEM_ORDER).toBool();
|
||||||
reverseAction->setChecked(reverseFlag);
|
reverseAction->setChecked(reverseFlag);
|
||||||
|
|
||||||
connect(reverseAction, &QAction::toggled, this, &NavigatorWidget::reverseOrderToggled);
|
connect(reverseAction, &QAction::toggled, this, &NavigatorWidget::reverseOrderToggled);
|
||||||
|
@@ -35,6 +35,7 @@
|
|||||||
#include <QPixmap>
|
#include <QPixmap>
|
||||||
|
|
||||||
#include "designersettings.h"
|
#include "designersettings.h"
|
||||||
|
#include <qmldesignerplugin.h>
|
||||||
#include <coreplugin/icore.h>
|
#include <coreplugin/icore.h>
|
||||||
|
|
||||||
namespace QmlDesigner {
|
namespace QmlDesigner {
|
||||||
@@ -59,7 +60,7 @@ struct Palette
|
|||||||
|
|
||||||
bool read()
|
bool read()
|
||||||
{
|
{
|
||||||
QStringList data = QmlDesigner::DesignerSettings::getValue(m_settingsKey).toStringList();
|
QStringList data = QmlDesignerPlugin::settings().value(m_settingsKey).toStringList();
|
||||||
if (data.isEmpty())
|
if (data.isEmpty())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
@@ -71,7 +72,7 @@ struct Palette
|
|||||||
|
|
||||||
void write() const
|
void write() const
|
||||||
{
|
{
|
||||||
QmlDesigner::DesignerSettings::setValue(m_settingsKey, m_colors);
|
QmlDesignerPlugin::settings().insert(m_settingsKey, m_colors);
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray m_settingsKey;
|
QByteArray m_settingsKey;
|
||||||
|
@@ -266,7 +266,7 @@ void TextEditorView::reformatFile()
|
|||||||
|
|
||||||
// Reformat document if we have a .ui.qml file
|
// Reformat document if we have a .ui.qml file
|
||||||
if (document && document->filePath().toString().endsWith(".ui.qml")
|
if (document && document->filePath().toString().endsWith(".ui.qml")
|
||||||
&& DesignerSettings::getValue(DesignerSettingsKey::REFORMAT_UI_QML_FILES).toBool()) {
|
&& QmlDesignerPlugin::settings().value(DesignerSettingsKey::REFORMAT_UI_QML_FILES).toBool()) {
|
||||||
|
|
||||||
QmlJS::Document::Ptr currentDocument(document->semanticInfo().document);
|
QmlJS::Document::Ptr currentDocument(document->semanticInfo().document);
|
||||||
QmlJS::Snapshot snapshot = QmlJS::ModelManagerInterface::instance()->snapshot();
|
QmlJS::Snapshot snapshot = QmlJS::ModelManagerInterface::instance()->snapshot();
|
||||||
|
@@ -91,7 +91,7 @@ bool Exception::shouldAssert()
|
|||||||
bool Exception::warnAboutException()
|
bool Exception::warnAboutException()
|
||||||
{
|
{
|
||||||
#ifndef QMLDESIGNER_TEST
|
#ifndef QMLDESIGNER_TEST
|
||||||
static bool warnException = !QmlDesignerPlugin::instance()->settings().value(
|
static bool warnException = !QmlDesignerPlugin::settings().value(
|
||||||
DesignerSettingsKey::ENABLE_MODEL_EXCEPTION_OUTPUT).toBool();
|
DesignerSettingsKey::ENABLE_MODEL_EXCEPTION_OUTPUT).toBool();
|
||||||
return warnException;
|
return warnException;
|
||||||
#else
|
#else
|
||||||
|
@@ -50,15 +50,14 @@ void InteractiveConnectionManager::setUp(NodeInstanceServerInterface *nodeInstan
|
|||||||
{
|
{
|
||||||
ConnectionManager::setUp(nodeInstanceServer, qrcMappingString, target, view);
|
ConnectionManager::setUp(nodeInstanceServer, qrcMappingString, target, view);
|
||||||
|
|
||||||
DesignerSettings settings = QmlDesignerPlugin::instance()->settings();
|
int timeOutTime = QmlDesignerPlugin::settings()
|
||||||
int timeOutTime = settings.value(DesignerSettingsKey::PUPPET_KILL_TIMEOUT).toInt();
|
.value(DesignerSettingsKey::PUPPET_KILL_TIMEOUT).toInt();
|
||||||
for (Connection &connection : connections()) {
|
for (Connection &connection : connections()) {
|
||||||
connection.timer.reset(new QTimer);
|
connection.timer.reset(new QTimer);
|
||||||
connection.timer->setInterval(timeOutTime);
|
connection.timer->setInterval(timeOutTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (QmlDesignerPlugin::instance()
|
if (QmlDesignerPlugin::settings()
|
||||||
->settings()
|
|
||||||
.value(DesignerSettingsKey::DEBUG_PUPPET)
|
.value(DesignerSettingsKey::DEBUG_PUPPET)
|
||||||
.toString()
|
.toString()
|
||||||
.isEmpty()) {
|
.isEmpty()) {
|
||||||
|
@@ -149,7 +149,7 @@ bool PuppetCreator::useOnlyFallbackPuppet() const
|
|||||||
#ifndef QMLDESIGNER_TEST
|
#ifndef QMLDESIGNER_TEST
|
||||||
if (!m_target || !m_target->kit()->isValid())
|
if (!m_target || !m_target->kit()->isValid())
|
||||||
qWarning() << "Invalid kit for QML puppet";
|
qWarning() << "Invalid kit for QML puppet";
|
||||||
return m_designerSettings.value(DesignerSettingsKey::USE_DEFAULT_PUPPET).toBool()
|
return QmlDesignerPlugin::settings().value(DesignerSettingsKey::USE_DEFAULT_PUPPET).toBool()
|
||||||
|| m_target == nullptr || !m_target->kit()->isValid();
|
|| m_target == nullptr || !m_target->kit()->isValid();
|
||||||
#else
|
#else
|
||||||
return true;
|
return true;
|
||||||
@@ -188,9 +188,6 @@ PuppetCreator::PuppetCreator(ProjectExplorer::Target *target, const Model *model
|
|||||||
: m_target(target)
|
: m_target(target)
|
||||||
, m_availablePuppetType(FallbackPuppet)
|
, m_availablePuppetType(FallbackPuppet)
|
||||||
, m_model(model)
|
, m_model(model)
|
||||||
#ifndef QMLDESIGNER_TEST
|
|
||||||
, m_designerSettings(QmlDesignerPlugin::instance()->settings())
|
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -232,7 +229,7 @@ QProcessUniquePointer PuppetCreator::puppetProcess(
|
|||||||
processFinishCallback);
|
processFinishCallback);
|
||||||
|
|
||||||
#ifndef QMLDESIGNER_TEST
|
#ifndef QMLDESIGNER_TEST
|
||||||
QString forwardOutput = m_designerSettings.value(DesignerSettingsKey::
|
QString forwardOutput = QmlDesignerPlugin::settings().value(DesignerSettingsKey::
|
||||||
FORWARD_PUPPET_OUTPUT).toString();
|
FORWARD_PUPPET_OUTPUT).toString();
|
||||||
#else
|
#else
|
||||||
QString forwardOutput("all");
|
QString forwardOutput("all");
|
||||||
@@ -265,7 +262,7 @@ QProcessUniquePointer PuppetCreator::puppetProcess(
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifndef QMLDESIGNER_TEST
|
#ifndef QMLDESIGNER_TEST
|
||||||
QString debugPuppet = m_designerSettings.value(DesignerSettingsKey::
|
QString debugPuppet = QmlDesignerPlugin::settings().value(DesignerSettingsKey::
|
||||||
DEBUG_PUPPET).toString();
|
DEBUG_PUPPET).toString();
|
||||||
#else
|
#else
|
||||||
QString debugPuppet("all");
|
QString debugPuppet("all");
|
||||||
@@ -415,7 +412,7 @@ QString PuppetCreator::defaultPuppetToplevelBuildDirectory()
|
|||||||
QString PuppetCreator::qmlPuppetToplevelBuildDirectory() const
|
QString PuppetCreator::qmlPuppetToplevelBuildDirectory() const
|
||||||
{
|
{
|
||||||
#ifndef QMLDESIGNER_TEST
|
#ifndef QMLDESIGNER_TEST
|
||||||
QString puppetToplevelBuildDirectory = m_designerSettings.value(
|
QString puppetToplevelBuildDirectory = QmlDesignerPlugin::settings().value(
|
||||||
DesignerSettingsKey::PUPPET_TOPLEVEL_BUILD_DIRECTORY).toString();
|
DesignerSettingsKey::PUPPET_TOPLEVEL_BUILD_DIRECTORY).toString();
|
||||||
if (puppetToplevelBuildDirectory.isEmpty())
|
if (puppetToplevelBuildDirectory.isEmpty())
|
||||||
return defaultPuppetToplevelBuildDirectory();
|
return defaultPuppetToplevelBuildDirectory();
|
||||||
@@ -435,7 +432,7 @@ QString PuppetCreator::qmlPuppetDirectory(PuppetType puppetType) const
|
|||||||
if (puppetType == BinPathPuppet)
|
if (puppetType == BinPathPuppet)
|
||||||
return pathForBinPuppet(m_target).toFileInfo().absoluteDir().canonicalPath();
|
return pathForBinPuppet(m_target).toFileInfo().absoluteDir().canonicalPath();
|
||||||
|
|
||||||
return qmlPuppetFallbackDirectory(m_designerSettings);
|
return qmlPuppetFallbackDirectory(QmlDesignerPlugin::settings());
|
||||||
#else
|
#else
|
||||||
return QString();
|
return QString();
|
||||||
#endif
|
#endif
|
||||||
@@ -503,10 +500,10 @@ QProcessEnvironment PuppetCreator::processEnvironment() const
|
|||||||
environment.set("QT_AUTO_SCREEN_SCALE_FACTOR", "1");
|
environment.set("QT_AUTO_SCREEN_SCALE_FACTOR", "1");
|
||||||
|
|
||||||
#ifndef QMLDESIGNER_TEST
|
#ifndef QMLDESIGNER_TEST
|
||||||
const QString controlsStyle = m_designerSettings.value(DesignerSettingsKey::
|
const QString controlsStyle = QmlDesignerPlugin::settings().value(DesignerSettingsKey::
|
||||||
CONTROLS_STYLE).toString();
|
CONTROLS_STYLE).toString();
|
||||||
|
|
||||||
const bool smoothRendering = m_designerSettings.value(DesignerSettingsKey::SMOOTH_RENDERING)
|
const bool smoothRendering = QmlDesignerPlugin::settings().value(DesignerSettingsKey::SMOOTH_RENDERING)
|
||||||
.toBool();
|
.toBool();
|
||||||
|
|
||||||
if (smoothRendering)
|
if (smoothRendering)
|
||||||
@@ -553,7 +550,7 @@ QProcessEnvironment PuppetCreator::processEnvironment() const
|
|||||||
environment.set("QMLDESIGNER_FORCE_QAPPLICATION", "true");
|
environment.set("QMLDESIGNER_FORCE_QAPPLICATION", "true");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool particlemode = QmlDesigner::DesignerSettings::getValue("particleMode").toBool();
|
bool particlemode = QmlDesigner::QmlDesignerPlugin::settings().value("particleMode").toBool();
|
||||||
if (!particlemode)
|
if (!particlemode)
|
||||||
environment.set("QT_QUICK3D_DISABLE_PARTICLE_SYSTEMS", "1");
|
environment.set("QT_QUICK3D_DISABLE_PARTICLE_SYSTEMS", "1");
|
||||||
else
|
else
|
||||||
|
@@ -108,9 +108,6 @@ private:
|
|||||||
PuppetType m_availablePuppetType;
|
PuppetType m_availablePuppetType;
|
||||||
static QHash<Utils::Id, PuppetType> m_qml2PuppetForKitPuppetHash;
|
static QHash<Utils::Id, PuppetType> m_qml2PuppetForKitPuppetHash;
|
||||||
const Model *m_model = nullptr;
|
const Model *m_model = nullptr;
|
||||||
#ifndef QMLDESIGNER_TEST
|
|
||||||
const DesignerSettings m_designerSettings;
|
|
||||||
#endif
|
|
||||||
QString m_qrcMapping;
|
QString m_qrcMapping;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -677,10 +677,10 @@ QString QmlObjectNode::generateTranslatableText(const QString &text)
|
|||||||
{
|
{
|
||||||
#ifndef QMLDESIGNER_TEST
|
#ifndef QMLDESIGNER_TEST
|
||||||
|
|
||||||
if (QmlDesignerPlugin::instance()->settings().value(
|
if (QmlDesignerPlugin::settings().value(
|
||||||
DesignerSettingsKey::TYPE_OF_QSTR_FUNCTION).toInt())
|
DesignerSettingsKey::TYPE_OF_QSTR_FUNCTION).toInt())
|
||||||
|
|
||||||
switch (QmlDesignerPlugin::instance()->settings().value(
|
switch (QmlDesignerPlugin::settings().value(
|
||||||
DesignerSettingsKey::TYPE_OF_QSTR_FUNCTION).toInt()) {
|
DesignerSettingsKey::TYPE_OF_QSTR_FUNCTION).toInt()) {
|
||||||
case 0: return QString(QStringLiteral("qsTr(\"%1\")")).arg(text);
|
case 0: return QString(QStringLiteral("qsTr(\"%1\")")).arg(text);
|
||||||
case 1: return QString(QStringLiteral("qsTrId(\"%1\")")).arg(text);
|
case 1: return QString(QStringLiteral("qsTrId(\"%1\")")).arg(text);
|
||||||
|
@@ -25,8 +25,6 @@
|
|||||||
|
|
||||||
#include "designersettings.h"
|
#include "designersettings.h"
|
||||||
|
|
||||||
#include <qmldesignerplugin.h>
|
|
||||||
|
|
||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
|
|
||||||
namespace QmlDesigner {
|
namespace QmlDesigner {
|
||||||
@@ -36,11 +34,35 @@ namespace DesignerSettingsGroupKey {
|
|||||||
const char QML_DESIGNER_SETTINGS_GROUP[] = "Designer";
|
const char QML_DESIGNER_SETTINGS_GROUP[] = "Designer";
|
||||||
}
|
}
|
||||||
|
|
||||||
DesignerSettings::DesignerSettings() = default;
|
DesignerSettings::DesignerSettings(QSettings *settings) :
|
||||||
|
m_settings(settings)
|
||||||
|
{
|
||||||
|
fromSettings(settings);
|
||||||
|
}
|
||||||
|
|
||||||
|
void DesignerSettings::insert(const QByteArray &key, const QVariant &value)
|
||||||
|
{
|
||||||
|
QMutexLocker locker(&m_mutex);
|
||||||
|
m_cache.insert(key, value);
|
||||||
|
toSettings(m_settings);
|
||||||
|
}
|
||||||
|
|
||||||
|
void DesignerSettings::insert(const QHash<QByteArray, QVariant> &settingsHash)
|
||||||
|
{
|
||||||
|
QMutexLocker locker(&m_mutex);
|
||||||
|
m_cache.insert(settingsHash);
|
||||||
|
toSettings(m_settings);
|
||||||
|
}
|
||||||
|
|
||||||
|
QVariant DesignerSettings::value(const QByteArray &key, const QVariant &defaultValue) const
|
||||||
|
{
|
||||||
|
QMutexLocker locker(&m_mutex);
|
||||||
|
return m_cache.value(key);
|
||||||
|
}
|
||||||
|
|
||||||
void DesignerSettings::restoreValue(QSettings *settings, const QByteArray &key, const QVariant &defaultValue)
|
void DesignerSettings::restoreValue(QSettings *settings, const QByteArray &key, const QVariant &defaultValue)
|
||||||
{
|
{
|
||||||
insert(key, settings->value(QString::fromLatin1(key), defaultValue));
|
m_cache.insert(key, settings->value(QString::fromLatin1(key), defaultValue));
|
||||||
}
|
}
|
||||||
|
|
||||||
void DesignerSettings::fromSettings(QSettings *settings)
|
void DesignerSettings::fromSettings(QSettings *settings)
|
||||||
@@ -80,8 +102,8 @@ void DesignerSettings::fromSettings(QSettings *settings)
|
|||||||
restoreValue(settings, DesignerSettingsKey::ALWAYS_DESIGN_MODE, true);
|
restoreValue(settings, DesignerSettingsKey::ALWAYS_DESIGN_MODE, true);
|
||||||
restoreValue(settings, DesignerSettingsKey::DISABLE_ITEM_LIBRARY_UPDATE_TIMER, false);
|
restoreValue(settings, DesignerSettingsKey::DISABLE_ITEM_LIBRARY_UPDATE_TIMER, false);
|
||||||
restoreValue(settings, DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET, true);
|
restoreValue(settings, DesignerSettingsKey::ASK_BEFORE_DELETING_ASSET, true);
|
||||||
const QStringList defaultValue = QStringList() << "#222222" << "#999999";
|
restoreValue(settings, DesignerSettingsKey::EDIT3DVIEW_BACKGROUND_COLOR,
|
||||||
restoreValue(settings, DesignerSettingsKey::EDIT3DVIEW_BACKGROUND_COLOR, defaultValue);
|
QStringList{"#222222", "#999999"});
|
||||||
restoreValue(settings, DesignerSettingsKey::EDIT3DVIEW_GRID_COLOR, "#aaaaaa");
|
restoreValue(settings, DesignerSettingsKey::EDIT3DVIEW_GRID_COLOR, "#aaaaaa");
|
||||||
restoreValue(settings, DesignerSettingsKey::SMOOTH_RENDERING, false);
|
restoreValue(settings, DesignerSettingsKey::SMOOTH_RENDERING, false);
|
||||||
restoreValue(settings, DesignerSettingsKey::SHOW_DEBUG_SETTINGS, false);
|
restoreValue(settings, DesignerSettingsKey::SHOW_DEBUG_SETTINGS, false);
|
||||||
@@ -103,8 +125,8 @@ void DesignerSettings::toSettings(QSettings *settings) const
|
|||||||
settings->beginGroup(QLatin1String(DesignerSettingsGroupKey::QML_SETTINGS_GROUP));
|
settings->beginGroup(QLatin1String(DesignerSettingsGroupKey::QML_SETTINGS_GROUP));
|
||||||
settings->beginGroup(QLatin1String(DesignerSettingsGroupKey::QML_DESIGNER_SETTINGS_GROUP));
|
settings->beginGroup(QLatin1String(DesignerSettingsGroupKey::QML_DESIGNER_SETTINGS_GROUP));
|
||||||
|
|
||||||
QHash<QByteArray, QVariant>::const_iterator i = constBegin();
|
QHash<QByteArray, QVariant>::const_iterator i = m_cache.constBegin();
|
||||||
while (i != constEnd()) {
|
while (i != m_cache.constEnd()) {
|
||||||
storeValue(settings, i.key(), i.value());
|
storeValue(settings, i.key(), i.value());
|
||||||
++i;
|
++i;
|
||||||
}
|
}
|
||||||
@@ -113,17 +135,4 @@ void DesignerSettings::toSettings(QSettings *settings) const
|
|||||||
settings->endGroup();
|
settings->endGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant DesignerSettings::getValue(const QByteArray &key)
|
|
||||||
{
|
|
||||||
DesignerSettings settings = QmlDesignerPlugin::instance()->settings();
|
|
||||||
return settings.value(key);
|
|
||||||
}
|
|
||||||
|
|
||||||
void DesignerSettings::setValue(const QByteArray &key, const QVariant &value)
|
|
||||||
{
|
|
||||||
DesignerSettings settings = QmlDesignerPlugin::instance()->settings();
|
|
||||||
settings.insert(key, value);
|
|
||||||
QmlDesignerPlugin::instance()->setSettings(settings);
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
@@ -30,6 +30,7 @@
|
|||||||
#include <QHash>
|
#include <QHash>
|
||||||
#include <QVariant>
|
#include <QVariant>
|
||||||
#include <QByteArray>
|
#include <QByteArray>
|
||||||
|
#include <QMutex>
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
class QSettings;
|
class QSettings;
|
||||||
@@ -77,19 +78,25 @@ const char SMOOTH_RENDERING[] = "SmoothRendering";
|
|||||||
const char OLD_STATES_EDITOR[] = "OldStatesEditor";
|
const char OLD_STATES_EDITOR[] = "OldStatesEditor";
|
||||||
}
|
}
|
||||||
|
|
||||||
class QMLDESIGNERCORE_EXPORT DesignerSettings : public QHash<QByteArray, QVariant>
|
class QMLDESIGNERCORE_EXPORT DesignerSettings
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
DesignerSettings();
|
DesignerSettings(QSettings *settings);
|
||||||
|
|
||||||
|
void insert(const QByteArray &key, const QVariant &value);
|
||||||
|
void insert(const QHash<QByteArray, QVariant> &settingsHash);
|
||||||
|
QVariant value(const QByteArray &key, const QVariant &defaultValue = {}) const;
|
||||||
|
|
||||||
|
private:
|
||||||
void fromSettings(QSettings *);
|
void fromSettings(QSettings *);
|
||||||
void toSettings(QSettings *) const;
|
void toSettings(QSettings *) const;
|
||||||
static QVariant getValue(const QByteArray &key);
|
|
||||||
static void setValue(const QByteArray &key, const QVariant &value);
|
|
||||||
private:
|
|
||||||
void restoreValue(QSettings *settings, const QByteArray &key,
|
void restoreValue(QSettings *settings, const QByteArray &key,
|
||||||
const QVariant &defaultValue = QVariant());
|
const QVariant &defaultValue = QVariant());
|
||||||
void storeValue(QSettings *settings, const QByteArray &key, const QVariant &value) const;
|
void storeValue(QSettings *settings, const QByteArray &key, const QVariant &value) const;
|
||||||
|
|
||||||
|
QSettings *m_settings;
|
||||||
|
QHash<QByteArray, QVariant> m_cache;
|
||||||
|
mutable QMutex m_mutex;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
@@ -200,12 +200,12 @@ void DocumentWarningWidget::emitGotoCodeClicked(const DocumentMessage &message)
|
|||||||
|
|
||||||
bool DocumentWarningWidget::warningsEnabled() const
|
bool DocumentWarningWidget::warningsEnabled() const
|
||||||
{
|
{
|
||||||
return DesignerSettings::getValue(DesignerSettingsKey::WARNING_FOR_FEATURES_IN_DESIGNER).toBool();
|
return QmlDesignerPlugin::settings().value(DesignerSettingsKey::WARNING_FOR_FEATURES_IN_DESIGNER).toBool();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DocumentWarningWidget::ignoreCheckBoxToggled(bool b)
|
void DocumentWarningWidget::ignoreCheckBoxToggled(bool b)
|
||||||
{
|
{
|
||||||
DesignerSettings::setValue(DesignerSettingsKey::WARNING_FOR_FEATURES_IN_DESIGNER, !b);
|
QmlDesignerPlugin::settings().value(DesignerSettingsKey::WARNING_FOR_FEATURES_IN_DESIGNER, !b);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DocumentWarningWidget::setErrors(const QList<DocumentMessage> &errors)
|
void DocumentWarningWidget::setErrors(const QList<DocumentMessage> &errors)
|
||||||
|
@@ -55,9 +55,8 @@ OpenUiQmlFileDialog::OpenUiQmlFileDialog(QWidget *parent) :
|
|||||||
close();
|
close();
|
||||||
});
|
});
|
||||||
connect(ui->checkBox, &QCheckBox::toggled, this, [](bool b){
|
connect(ui->checkBox, &QCheckBox::toggled, this, [](bool b){
|
||||||
DesignerSettings settings = QmlDesignerPlugin::instance()->settings();
|
QmlDesignerPlugin::settings().insert(
|
||||||
settings.insert(DesignerSettingsKey::WARNING_FOR_QML_FILES_INSTEAD_OF_UIQML_FILES, !b);
|
DesignerSettingsKey::WARNING_FOR_QML_FILES_INSTEAD_OF_UIQML_FILES, !b);
|
||||||
QmlDesignerPlugin::instance()->setSettings(settings);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -124,7 +124,7 @@ QtQuickDesignerFactory::QtQuickDesignerFactory()
|
|||||||
setDocumentCreator([this]() {
|
setDocumentCreator([this]() {
|
||||||
auto document = new QmlJSEditor::QmlJSEditorDocument(id());
|
auto document = new QmlJSEditor::QmlJSEditorDocument(id());
|
||||||
document->setIsDesignModePreferred(
|
document->setIsDesignModePreferred(
|
||||||
QmlDesigner::DesignerSettings::getValue(
|
QmlDesigner::QmlDesignerPlugin::settings().value(
|
||||||
QmlDesigner::DesignerSettingsKey::ALWAYS_DESIGN_MODE).toBool());
|
QmlDesigner::DesignerSettingsKey::ALWAYS_DESIGN_MODE).toBool());
|
||||||
return document;
|
return document;
|
||||||
});
|
});
|
||||||
@@ -135,6 +135,7 @@ QtQuickDesignerFactory::QtQuickDesignerFactory()
|
|||||||
class QmlDesignerPluginPrivate
|
class QmlDesignerPluginPrivate
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
DesignerSettings settings{Core::ICore::instance()->settings()};
|
||||||
QmlDesignerProjectManager projectManager;
|
QmlDesignerProjectManager projectManager;
|
||||||
ViewManager viewManager{projectManager.asynchronousImageCache(),
|
ViewManager viewManager{projectManager.asynchronousImageCache(),
|
||||||
projectManager.asynchronousMeshImageCache()};
|
projectManager.asynchronousMeshImageCache()};
|
||||||
@@ -142,7 +143,6 @@ public:
|
|||||||
ShortCutManager shortCutManager;
|
ShortCutManager shortCutManager;
|
||||||
SettingsPage settingsPage;
|
SettingsPage settingsPage;
|
||||||
DesignModeWidget mainWidget;
|
DesignModeWidget mainWidget;
|
||||||
DesignerSettings settings;
|
|
||||||
QtQuickDesignerFactory m_qtQuickDesignerFactory;
|
QtQuickDesignerFactory m_qtQuickDesignerFactory;
|
||||||
bool blockEditorChange = false;
|
bool blockEditorChange = false;
|
||||||
};
|
};
|
||||||
@@ -196,7 +196,7 @@ static bool shouldAssertInException()
|
|||||||
|
|
||||||
static bool warningsForQmlFilesInsteadOfUiQmlEnabled()
|
static bool warningsForQmlFilesInsteadOfUiQmlEnabled()
|
||||||
{
|
{
|
||||||
return DesignerSettings::getValue(DesignerSettingsKey::WARNING_FOR_QML_FILES_INSTEAD_OF_UIQML_FILES).toBool();
|
return QmlDesignerPlugin::settings().value(DesignerSettingsKey::WARNING_FOR_QML_FILES_INSTEAD_OF_UIQML_FILES).toBool();
|
||||||
}
|
}
|
||||||
|
|
||||||
QmlDesignerPlugin::QmlDesignerPlugin()
|
QmlDesignerPlugin::QmlDesignerPlugin()
|
||||||
@@ -297,8 +297,6 @@ bool QmlDesignerPlugin::delayedInitialize()
|
|||||||
});
|
});
|
||||||
MetaInfo::setPluginPaths(pluginPaths);
|
MetaInfo::setPluginPaths(pluginPaths);
|
||||||
|
|
||||||
d->settings.fromSettings(Core::ICore::settings());
|
|
||||||
|
|
||||||
d->viewManager.registerView(std::make_unique<QmlDesigner::Internal::ConnectionView>());
|
d->viewManager.registerView(std::make_unique<QmlDesigner::Internal::ConnectionView>());
|
||||||
|
|
||||||
auto timelineView = d->viewManager.registerView(std::make_unique<QmlDesigner::TimelineView>());
|
auto timelineView = d->viewManager.registerView(std::make_unique<QmlDesigner::TimelineView>());
|
||||||
@@ -645,7 +643,7 @@ void QmlDesignerPlugin::emitCurrentTextEditorChanged(Core::IEditor *editor)
|
|||||||
|
|
||||||
double QmlDesignerPlugin::formEditorDevicePixelRatio()
|
double QmlDesignerPlugin::formEditorDevicePixelRatio()
|
||||||
{
|
{
|
||||||
if (DesignerSettings::getValue(DesignerSettingsKey::IGNORE_DEVICE_PIXEL_RATIO).toBool())
|
if (QmlDesignerPlugin::settings().value(DesignerSettingsKey::IGNORE_DEVICE_PIXEL_RATIO).toBool())
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
const QList<QWindow *> topLevelWindows = QApplication::topLevelWindows();
|
const QList<QWindow *> topLevelWindows = QApplication::topLevelWindows();
|
||||||
@@ -753,18 +751,9 @@ const DesignerActionManager &QmlDesignerPlugin::designerActionManager() const
|
|||||||
return d->viewManager.designerActionManager();
|
return d->viewManager.designerActionManager();
|
||||||
}
|
}
|
||||||
|
|
||||||
DesignerSettings QmlDesignerPlugin::settings()
|
DesignerSettings& QmlDesignerPlugin::settings()
|
||||||
{
|
{
|
||||||
d->settings.fromSettings(Core::ICore::settings());
|
return instance()->d->settings;
|
||||||
return d->settings;
|
|
||||||
}
|
|
||||||
|
|
||||||
void QmlDesignerPlugin::setSettings(const DesignerSettings &s)
|
|
||||||
{
|
|
||||||
if (s != d->settings) {
|
|
||||||
d->settings = s;
|
|
||||||
d->settings.toSettings(Core::ICore::settings());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
@@ -75,8 +75,7 @@ public:
|
|||||||
DesignerActionManager &designerActionManager();
|
DesignerActionManager &designerActionManager();
|
||||||
const DesignerActionManager &designerActionManager() const;
|
const DesignerActionManager &designerActionManager() const;
|
||||||
|
|
||||||
DesignerSettings settings();
|
static DesignerSettings& settings();
|
||||||
void setSettings(const DesignerSettings &s);
|
|
||||||
|
|
||||||
DesignDocument *currentDesignDocument() const;
|
DesignDocument *currentDesignDocument() const;
|
||||||
Internal::DesignModeWidget *mainWidget() const;
|
Internal::DesignModeWidget *mainWidget() const;
|
||||||
|
@@ -63,7 +63,7 @@ public:
|
|||||||
|
|
||||||
void apply() final;
|
void apply() final;
|
||||||
|
|
||||||
DesignerSettings settings() const;
|
QHash<QByteArray, QVariant> newSettings() const;
|
||||||
void setSettings(const DesignerSettings &settings);
|
void setSettings(const DesignerSettings &settings);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@@ -108,9 +108,9 @@ SettingsPageWidget::SettingsPageWidget()
|
|||||||
setSettings(QmlDesignerPlugin::instance()->settings());
|
setSettings(QmlDesignerPlugin::instance()->settings());
|
||||||
}
|
}
|
||||||
|
|
||||||
DesignerSettings SettingsPageWidget::settings() const
|
QHash<QByteArray, QVariant> SettingsPageWidget::newSettings() const
|
||||||
{
|
{
|
||||||
DesignerSettings settings = QmlDesignerPlugin::instance()->settings();
|
QHash<QByteArray, QVariant> settings;
|
||||||
settings.insert(DesignerSettingsKey::ITEMSPACING, m_ui.spinItemSpacing->value());
|
settings.insert(DesignerSettingsKey::ITEMSPACING, m_ui.spinItemSpacing->value());
|
||||||
settings.insert(DesignerSettingsKey::CONTAINERPADDING, m_ui.spinSnapMargin->value());
|
settings.insert(DesignerSettingsKey::CONTAINERPADDING, m_ui.spinSnapMargin->value());
|
||||||
settings.insert(DesignerSettingsKey::CANVASWIDTH, m_ui.spinCanvasWidth->value());
|
settings.insert(DesignerSettingsKey::CANVASWIDTH, m_ui.spinCanvasWidth->value());
|
||||||
@@ -154,7 +154,8 @@ DesignerSettings SettingsPageWidget::settings() const
|
|||||||
m_ui.fallbackPuppetPathLineEdit->lineEdit()->placeholderText());
|
m_ui.fallbackPuppetPathLineEdit->lineEdit()->placeholderText());
|
||||||
if (newFallbackPuppetPath.isEmpty())
|
if (newFallbackPuppetPath.isEmpty())
|
||||||
newFallbackPuppetPath = m_ui.fallbackPuppetPathLineEdit->lineEdit()->placeholderText();
|
newFallbackPuppetPath = m_ui.fallbackPuppetPathLineEdit->lineEdit()->placeholderText();
|
||||||
QString oldFallbackPuppetPath = PuppetCreator::qmlPuppetFallbackDirectory(settings);
|
|
||||||
|
QString oldFallbackPuppetPath = PuppetCreator::qmlPuppetFallbackDirectory(QmlDesignerPlugin::settings());
|
||||||
|
|
||||||
if (oldFallbackPuppetPath != newFallbackPuppetPath && QFileInfo::exists(newFallbackPuppetPath)) {
|
if (oldFallbackPuppetPath != newFallbackPuppetPath && QFileInfo::exists(newFallbackPuppetPath)) {
|
||||||
if (newFallbackPuppetPath == PuppetCreator::defaultPuppetFallbackDirectory())
|
if (newFallbackPuppetPath == PuppetCreator::defaultPuppetFallbackDirectory())
|
||||||
@@ -270,8 +271,7 @@ void SettingsPageWidget::setSettings(const DesignerSettings &settings)
|
|||||||
|
|
||||||
void SettingsPageWidget::apply()
|
void SettingsPageWidget::apply()
|
||||||
{
|
{
|
||||||
DesignerSettings currentSettings(QmlDesignerPlugin::instance()->settings());
|
auto settings = newSettings();
|
||||||
DesignerSettings newSettings = settings();
|
|
||||||
|
|
||||||
const auto restartNecessaryKeys = {
|
const auto restartNecessaryKeys = {
|
||||||
DesignerSettingsKey::PUPPET_DEFAULT_DIRECTORY,
|
DesignerSettingsKey::PUPPET_DEFAULT_DIRECTORY,
|
||||||
@@ -285,7 +285,7 @@ void SettingsPageWidget::apply()
|
|||||||
};
|
};
|
||||||
|
|
||||||
for (const char * const key : restartNecessaryKeys) {
|
for (const char * const key : restartNecessaryKeys) {
|
||||||
if (currentSettings.value(key) != newSettings.value(key)) {
|
if (QmlDesignerPlugin::settings().value(key) != settings.value(key)) {
|
||||||
QMessageBox::information(Core::ICore::dialogParent(), tr("Restart Required"),
|
QMessageBox::information(Core::ICore::dialogParent(), tr("Restart Required"),
|
||||||
tr("The made changes will take effect after a "
|
tr("The made changes will take effect after a "
|
||||||
"restart of the QML Emulation layer or %1.")
|
"restart of the QML Emulation layer or %1.")
|
||||||
@@ -294,7 +294,7 @@ void SettingsPageWidget::apply()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QmlDesignerPlugin::instance()->setSettings(newSettings);
|
QmlDesignerPlugin::settings().insert(settings);
|
||||||
}
|
}
|
||||||
|
|
||||||
SettingsPage::SettingsPage()
|
SettingsPage::SettingsPage()
|
||||||
|
Reference in New Issue
Block a user