/** * @brief cwRegionLoadTask::loadTrip * @param protoTrip * @param trip */ void cwRegionLoadTask::loadTrip(const CavewhereProto::Trip& protoTrip, cwTrip *trip) { QString tripName = loadString(protoTrip.name()); QDate tripDate = loadDate(protoTrip.date()); trip->setName(tripName); trip->setDate(tripDate); loadSurveyNoteModel(protoTrip.notemodel(), trip->notes()); loadTripCalibration(protoTrip.tripcalibration(), trip->calibrations()); loadTeam(protoTrip.team(), trip->team()); QList<cwSurveyChunk*> chunks; chunks.reserve(protoTrip.chunks_size()); for(int i = 0; i < protoTrip.chunks_size(); i++) { cwSurveyChunk* chunk = new cwSurveyChunk(); loadSurveyChunk(protoTrip.chunks(i), chunk); chunks.append(chunk); } trip->setChucks(chunks); }
void Journal::slotRealRefresh() { if (_loading) return; _loading = true; setEnabled(false); QApplication::setOverrideCursor(waitCursor); qApp->processEvents(); // Disabled updates so that progress bar updating doesn't also do lists _general->setUpdatesEnabled(false); _disbursements->setUpdatesEnabled(false); _receipts->setUpdatesEnabled(false); _sales->setUpdatesEnabled(false); _purchases->setUpdatesEnabled(false); _inventory->setUpdatesEnabled(false); _all->setUpdatesEnabled(false); // Load accounts if needed if (_accounts.size() == 0) { _quasar->db()->select(_accounts, AccountSelect()); } // Clear out old values _general->clearList(); _disbursements->clearList(); _receipts->clearList(); _sales->clearList(); _purchases->clearList(); _inventory->clearList(); _all->clearList(); _lastStart = _from->getDate(); _lastEnd = _to->getDate(); int days = _lastEnd - _lastStart + 1; // Setup progress dialog QProgressDialog* progress = new QProgressDialog(tr("Loading transactions..."), tr("Cancel"), days, this, "Progress", true); progress->setMinimumDuration(0); progress->setCaption(tr("Progress")); for (int day = 0; day < days; ++day) { loadDate(_lastStart + day); progress->setProgress(day); qApp->processEvents(); if (progress->wasCancelled()) { // TODO: add cancelled line break; } } progress->setProgress(days); delete progress; // Enable updates on lists _general->setUpdatesEnabled(true); _disbursements->setUpdatesEnabled(true); _receipts->setUpdatesEnabled(true); _sales->setUpdatesEnabled(true); _purchases->setUpdatesEnabled(true); _inventory->setUpdatesEnabled(true); _all->setUpdatesEnabled(true); QApplication::restoreOverrideCursor(); setEnabled(true); _loading = false; _refreshPending = false; }