mirror of
https://github.com/sqlitebrowser/sqlitebrowser.git
synced 2026-01-20 02:50:46 -06:00
Allow inline editing in browse data tab
Make it possible to edit records directly in the table view without having to open the edit dialog.
This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user