Merge remote-tracking branch 'origin/8.0' into 9.0

Conflicts:
	doc/qtcreator/src/qtquick/qt-design-viewer.qdoc
	src/plugins/qmldesigner/components/assetslibrary/assetslibrarywidget.cpp
	src/plugins/qmldesigner/components/edit3d/edit3dwidget.cpp
	src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp
	src/plugins/qmldesigner/components/navigator/choosefrompropertylistdialog.cpp
	src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp
	src/plugins/qmldesigner/designercore/model/abstractview.cpp
	src/plugins/qmldesigner/designercore/model/import.cpp
	src/plugins/qmldesigner/designercore/model/model_p.h
	src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp
	src/plugins/qmlprojectmanager/qmlproject.cpp

Change-Id: I4236bf0da9306abf201f4679259e72dd7c1eddbe
This commit is contained in:
Eike Ziller
2022-11-01 15:38:49 +01:00
80 changed files with 888 additions and 396 deletions

View File

@@ -293,7 +293,8 @@ void ActionEditor::updateWindowName(const QString &targetName)
}
void ActionEditor::invokeEditor(SignalHandlerProperty signalHandler,
std::function<void(SignalHandlerProperty)> onReject,
std::function<void(SignalHandlerProperty)> removeSignalFunction,
bool removeOnReject,
QObject * parent)
{
if (!signalHandler.isValid())
@@ -324,15 +325,23 @@ void ActionEditor::invokeEditor(SignalHandlerProperty signalHandler,
if (!editor)
return;
if (editor->m_modelNode.isValid()) {
editor->m_modelNode.view()->executeInTransaction("ActionEditor::"
"invokeEditorAccepted",
[=]() {
editor->m_modelNode
.signalHandlerProperty(
signalHandler.name())
.setSource(
editor->connectionValue());
});
editor->m_modelNode.view()
->executeInTransaction("ActionEditor::"
"invokeEditorAccepted",
[=]() {
if (!editor)
return;
const QString newSource = editor->connectionValue();
if ((newSource.isNull() || newSource.trimmed().isEmpty())
&& removeSignalFunction) {
removeSignalFunction(signalHandler);
} else {
editor->m_modelNode
.signalHandlerProperty(signalHandler.name())
.setSource(newSource);
}
});
}
//closing editor widget somewhy triggers rejected() signal. Lets disconect before it affects us:
@@ -344,10 +353,10 @@ void ActionEditor::invokeEditor(SignalHandlerProperty signalHandler,
if (!editor)
return;
if (onReject) {
if (removeOnReject && removeSignalFunction) {
editor->m_modelNode.view()->executeInTransaction("ActionEditor::"
"invokeEditorOnRejectFunc",
[=]() { onReject(signalHandler); });
[=]() { removeSignalFunction(signalHandler); });
}
//closing editor widget somewhy triggers rejected() signal 2nd time. Lets disconect before it affects us: