If the user aborts state renaming or gives the state the same
name again there is no MessageBox shown anymore.
}
void StatesEditorModel::renameState(int nodeId, const QString &newName)
-{
+{
+ if (newName == m_statesEditorView->currentStateName())
+ return;
+
if (newName.isEmpty() ||! m_statesEditorView->validStateName(newName)) {
QMessageBox::warning(0, tr("Invalid state name"),
newName.isEmpty() ?
return true;
}
+QString StatesEditorView::currentStateName() const
+{
+ return currentState().isValid() ? currentState().name() : QString();
+}
+
void StatesEditorView::renameState(int nodeId, const QString &newName)
{
if (hasModelNodeForInternalId(nodeId)) {
void renameState(int nodeId,const QString &newName);
bool validStateName(const QString &name) const;
+ QString currentStateName() const;
void nodeInstancePropertyChanged(const ModelNode &node, const QString &propertyName);