forked from qt-creator/qt-creator
QmlDesigner: Implement JumpToCode in states editor
Task-number: QDS-10867 Change-Id: I90975ad70567261899f047f2f02236bb993cfd2b Reviewed-by: Henning Gründl <henning.gruendl@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
This commit is contained in:
@@ -44,6 +44,7 @@ StudioControls.Menu {
|
||||
signal remove()
|
||||
signal toggle()
|
||||
signal resetWhenCondition()
|
||||
signal jumpToCode()
|
||||
signal editAnnotation()
|
||||
signal removeAnnotation()
|
||||
|
||||
@@ -84,6 +85,14 @@ StudioControls.Menu {
|
||||
|
||||
StudioControls.MenuSeparator {}
|
||||
|
||||
StudioControls.MenuItem {
|
||||
enabled: !root.isBaseState
|
||||
text: qsTr("Jump To Code")
|
||||
onTriggered: root.jumpToCode()
|
||||
}
|
||||
|
||||
StudioControls.MenuSeparator {}
|
||||
|
||||
StudioControls.MenuItem {
|
||||
enabled: !root.isBaseState && root.hasWhenCondition
|
||||
text: qsTr("Reset when Condition")
|
||||
|
||||
@@ -736,6 +736,9 @@ Item {
|
||||
onRemove: root.remove()
|
||||
onToggle: root.setPropertyChangesVisible(!root.propertyChangesVisible)
|
||||
onResetWhenCondition: statesEditorModel.resetWhenCondition(root.internalNodeId)
|
||||
|
||||
onJumpToCode: StatesEditorBackend.statesEditorModel.jumpToCode()
|
||||
|
||||
onEditAnnotation: {
|
||||
StatesEditorBackend.statesEditorModel.setAnnotation(root.internalNodeId)
|
||||
stateMenu.hasAnnotation = root.checkAnnotation()
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
#include <bindingproperty.h>
|
||||
#include <modelnode.h>
|
||||
#include <modelnodeoperations.h>
|
||||
#include <nodelistproperty.h>
|
||||
#include <nodemetainfo.h>
|
||||
#include <rewriterview.h>
|
||||
@@ -246,6 +247,11 @@ bool StatesEditorModel::hasDefaultState() const
|
||||
return m_statesEditorView->hasDefaultState();
|
||||
}
|
||||
|
||||
void StatesEditorModel::jumpToCode()
|
||||
{
|
||||
ModelNodeOperations::jumpToCode(m_statesEditorView->currentState().modelNode());
|
||||
}
|
||||
|
||||
void StatesEditorModel::setAnnotation(int internalNodeId)
|
||||
{
|
||||
m_statesEditorView->setAnnotation(internalNodeId);
|
||||
|
||||
@@ -50,6 +50,7 @@ public:
|
||||
Q_INVOKABLE void setStateAsDefault(int internalNodeId);
|
||||
Q_INVOKABLE void resetDefaultState();
|
||||
Q_INVOKABLE bool hasDefaultState() const;
|
||||
Q_INVOKABLE void jumpToCode();
|
||||
Q_INVOKABLE void setAnnotation(int internalNodeId);
|
||||
Q_INVOKABLE void removeAnnotation(int internalNodeId);
|
||||
Q_INVOKABLE bool hasAnnotation(int internalNodeId) const;
|
||||
|
||||
Reference in New Issue
Block a user