diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index d2a13390..a2c94f0c 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -303,7 +303,7 @@ void MainWindow::populateTable( const QString & tablename) bool is_table = db.getObjectByName(tablename).gettype() == "table"; ui->buttonNewRecord->setEnabled(is_table); ui->buttonDeleteRecord->setEnabled(is_table); - ui->dataTable->setEditTriggers(is_table ? QAbstractItemView::DoubleClicked | QAbstractItemView::AnyKeyPressed | QAbstractItemView::EditKeyPressed : QAbstractItemView::NoEditTriggers); + ui->dataTable->setEditTriggers(is_table ? QAbstractItemView::SelectedClicked | QAbstractItemView::AnyKeyPressed | QAbstractItemView::EditKeyPressed : QAbstractItemView::NoEditTriggers); // Set the recordset label setRecordsetLabel(); diff --git a/src/sqlitetablemodel.cpp b/src/sqlitetablemodel.cpp index e2456446..77520303 100644 --- a/src/sqlitetablemodel.cpp +++ b/src/sqlitetablemodel.cpp @@ -135,7 +135,7 @@ QVariant SqliteTableModel::data(const QModelIndex &index, int role) const if (index.row() >= m_rowCount) return QVariant(); - if (role == Qt::DisplayRole) + if(role == Qt::DisplayRole || role == Qt::EditRole) { // If this row is not in the cache yet get it first while(index.row() >= m_data.size() && canFetchMore()) @@ -183,7 +183,7 @@ Qt::ItemFlags SqliteTableModel::flags(const QModelIndex& index) const if(!index.isValid()) return Qt::ItemIsEnabled; - return QAbstractTableModel::flags(index)/* | Qt::ItemIsEditable*/; + return QAbstractTableModel::flags(index) | Qt::ItemIsEditable; } void SqliteTableModel::sort(int column, Qt::SortOrder order)