forked from qt-creator/qt-creator
QmlDesigner: Disable "Edit Component" for effect composer effects
These components are autogenerated and overwritten by effect composer, so a regular user has no reason to modify them manually. Fixes: QDS-9020 Change-Id: Ida6706f123a8304944a19364c59620b8d9b4adbb Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
This commit is contained in:
@@ -577,6 +577,7 @@ QString EffectComposerModel::getQmlEffectString()
|
||||
QString header{
|
||||
R"(
|
||||
// Created with Qt Design Studio (version %1), %2
|
||||
// Do not manually edit this file, it will be overwritten if effect is modified in Qt Design Studio.
|
||||
|
||||
import QtQuick
|
||||
|
||||
|
@@ -1896,7 +1896,7 @@ void DesignerActionManager::createDefaultDesignerActions()
|
||||
QKeySequence(Qt::Key_F2),
|
||||
Priorities::ComponentActions + 2,
|
||||
&goIntoComponentOperation,
|
||||
&selectionIsComponent));
|
||||
&selectionIsEditableComponent));
|
||||
|
||||
addDesignerAction(new ModelNodeContextMenuAction(jumpToCodeCommandId,
|
||||
JumpToCodeDisplayName,
|
||||
|
@@ -89,10 +89,10 @@ bool fileComponentExists(const ModelNode &modelNode)
|
||||
return QFileInfo::exists(fileName);
|
||||
}
|
||||
|
||||
bool selectionIsComponent(const SelectionContext &selectionState)
|
||||
bool selectionIsEditableComponent(const SelectionContext &selectionState)
|
||||
{
|
||||
return selectionState.currentSingleSelectedNode().isComponent()
|
||||
&& fileComponentExists(selectionState.currentSingleSelectedNode());
|
||||
ModelNode node = selectionState.currentSingleSelectedNode();
|
||||
return node.isComponent() && !QmlItemNode(node).isEffectItem() && fileComponentExists(node);
|
||||
}
|
||||
|
||||
bool selectionIsImported3DAsset(const SelectionContext &selectionState)
|
||||
|
@@ -124,7 +124,7 @@ inline bool singleSelectedItem(const SelectionContext &selectionState)
|
||||
}
|
||||
|
||||
bool selectionHasSameParent(const SelectionContext &selectionState);
|
||||
bool selectionIsComponent(const SelectionContext &selectionState);
|
||||
bool selectionIsEditableComponent(const SelectionContext &selectionState);
|
||||
bool singleSelectionItemIsAnchored(const SelectionContext &selectionState);
|
||||
bool singleSelectionItemIsNotAnchored(const SelectionContext &selectionState);
|
||||
bool selectionIsImported3DAsset(const SelectionContext &selectionState);
|
||||
|
@@ -749,7 +749,8 @@ QString PropertyEditorQmlBackend::templateGeneration(const NodeMetaInfo &metaTyp
|
||||
qmlTemplate += "Column {\n";
|
||||
qmlTemplate += "width: parent.width\n";
|
||||
|
||||
if (node.modelNode().isComponent())
|
||||
bool isEditableComponent = node.modelNode().isComponent() && !QmlItemNode(node).isEffectItem();
|
||||
if (isEditableComponent)
|
||||
qmlTemplate += "ComponentButton {}\n";
|
||||
|
||||
QString qmlInnerTemplate = "";
|
||||
|
@@ -574,8 +574,10 @@ void PropertyEditorView::setupQmlBackend()
|
||||
{
|
||||
if constexpr (useProjectStorage()) {
|
||||
auto selfAndPrototypes = m_selectedNode.metaInfo().selfAndPrototypes();
|
||||
bool isEditableComponent = m_selectedNode.isComponent()
|
||||
&& !QmlItemNode(m_selectedNode).isEffectItem();
|
||||
auto specificQmlData = m_propertyEditorComponentGenerator.create(selfAndPrototypes,
|
||||
m_selectedNode.isComponent());
|
||||
isEditableComponent);
|
||||
auto [panePath, specificsPath] = findPaneAndSpecificsPath(selfAndPrototypes,
|
||||
model()->pathCache());
|
||||
PropertyEditorQmlBackend *currentQmlBackend = getQmlBackend(m_qmlBackendHash,
|
||||
|
Reference in New Issue
Block a user