diff --git a/src/plugins/projectexplorer/projectmodels.cpp b/src/plugins/projectexplorer/projectmodels.cpp index 1ce7ce1db6a332f77ff25ee9546fda6c2bab9e05..0cbd4e86580655ddae0a35b2c14ba729eb7226c2 100644 --- a/src/plugins/projectexplorer/projectmodels.cpp +++ b/src/plugins/projectexplorer/projectmodels.cpp @@ -289,7 +289,15 @@ Qt::ItemFlags FlatModel::flags(const QModelIndex &index) const // We claim that everything is editable // That's slightly wrong // We control the only view, and that one does the checks - return Qt::ItemIsSelectable|Qt::ItemIsEnabled | Qt::ItemIsEditable; + Qt::ItemFlags f = Qt::ItemIsSelectable|Qt::ItemIsEnabled; + if (Node *node = nodeForIndex(index)) { + if (!qobject_cast<ProjectNode *>(node)) { + // either folder or file node + if (node->projectNode()->supportedActions(node).contains(ProjectNode::Rename)) + f = f | Qt::ItemIsEditable; + } + } + return f; } bool FlatModel::setData(const QModelIndex &index, const QVariant &value, int role)