mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2026-06-07 08:24:53 -04:00
Make sure database models are synchronized before using QSqlTableModel::rowCount()
This is necessary as the cached model will not reflect a correct row count if there are un-fetched rows.
This commit is contained in:
+19
-2
@@ -46,10 +46,25 @@ CabrilloLog::impl::impl (Configuration const * configuration)
|
||||
}
|
||||
|
||||
SQL_error_check (dupe_query_, &QSqlQuery::prepare,
|
||||
"SELECT COUNT(*) FROM cabrillo_log WHERE call = :call AND band = :band");
|
||||
"SELECT "
|
||||
" COUNT(*) "
|
||||
" FROM "
|
||||
" cabrillo_log "
|
||||
" WHERE "
|
||||
" call = :call "
|
||||
" AND band = :band");
|
||||
|
||||
SQL_error_check (export_query_, &QSqlQuery::prepare,
|
||||
"SELECT frequency, \"when\", exchange_sent, call, exchange_rcvd FROM cabrillo_log ORDER BY \"when\"");
|
||||
"SELECT "
|
||||
" frequency"
|
||||
" , \"when\""
|
||||
" , exchange_sent"
|
||||
" , call"
|
||||
" , exchange_rcvd"
|
||||
" FROM "
|
||||
" cabrillo_log "
|
||||
" ORDER BY "
|
||||
" \"when\"");
|
||||
|
||||
setEditStrategy (QSqlTableModel::OnFieldChange);
|
||||
setTable ("cabrillo_log");
|
||||
@@ -138,6 +153,8 @@ bool CabrilloLog::dupe (Frequency frequency, QString const& call) const
|
||||
|
||||
void CabrilloLog::reset ()
|
||||
{
|
||||
// synchronize model
|
||||
while (m_->canFetchMore ()) m_->fetchMore ();
|
||||
if (m_->rowCount ())
|
||||
{
|
||||
m_->setEditStrategy (QSqlTableModel::OnManualSubmit);
|
||||
|
||||
Reference in New Issue
Block a user