Ashot
Ashot

Reputation: 10959

QTableView editing mode

When editing a cell of QTableView it opens empty entry. I have seen some tables that inserts the previous text in new opened entry and selects it when editing the cell, but cant find its implementation. Is there standard option for QTableview or it should be achieved manually.

Upvotes: 1

Views: 1522

Answers (1)

vahancho
vahancho

Reputation: 21220

The data of your tree view node while it is in edit mode defined by QAbstractItemModel::data() function with Qt::EditRole as the second argument. The given example makes tree view to show "Editing..." string in editor (usually line edit widget) when your node triggers the edit mode:

QVariant TreeModel::data(const QModelIndex &index, int role) const
{
    if (!index.isValid())
        return QVariant();

    if (role == Qt::EditRole) {
        return QString("Editing...");
    } else if (role == Qt::DecorationRole) {
        [..]
    } else {
        return QVariant();
    }
}

Upvotes: 3

Related Questions