QSqlTableModel::isDirty(): simplify and improve logic
Change-Id: Ic1332befa9078a94f872e38ff779e5b4cec7c100 Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>bb10
parent
46ce1185fb
commit
53338de52b
|
|
@ -461,23 +461,14 @@ bool QSqlTableModel::isDirty(const QModelIndex &index) const
|
|||
if (!index.isValid())
|
||||
return false;
|
||||
|
||||
switch (d->strategy) {
|
||||
case OnFieldChange:
|
||||
return false;
|
||||
case OnRowChange: {
|
||||
const QSqlTableModelPrivate::ModifiedRow row = d->cache.value(index.row());
|
||||
return row.op() == QSqlTableModelPrivate::Update
|
||||
&& row.rec().isGenerated(index.column());
|
||||
}
|
||||
case OnManualSubmit: {
|
||||
const QSqlTableModelPrivate::ModifiedRow row = d->cache.value(index.row());
|
||||
return row.op() == QSqlTableModelPrivate::Insert
|
||||
|| row.op() == QSqlTableModelPrivate::Delete
|
||||
|| (row.op() == QSqlTableModelPrivate::Update
|
||||
&& row.rec().isGenerated(index.column()));
|
||||
}
|
||||
}
|
||||
return false;
|
||||
const QSqlTableModelPrivate::ModifiedRow row = d->cache.value(index.row());
|
||||
if (row.submitted())
|
||||
return false;
|
||||
|
||||
return row.op() == QSqlTableModelPrivate::Insert
|
||||
|| row.op() == QSqlTableModelPrivate::Delete
|
||||
|| (row.op() == QSqlTableModelPrivate::Update
|
||||
&& row.rec().isGenerated(index.column()));
|
||||
}
|
||||
|
||||
/*!
|
||||
|
|
|
|||
Loading…
Reference in New Issue