49 lines
1.5 KiB
C++
49 lines
1.5 KiB
C++
#include "loaderdialog.h"
|
|
#include "ui_loaderdialog.h"
|
|
|
|
LoaderDialog::LoaderDialog(QWidget *parent) :
|
|
QDialog(parent),
|
|
ui(new Ui::LoaderDialog) {
|
|
ui->setupUi(this);
|
|
|
|
ui->labelAppVer->setText(tr("Versjon %1").arg(APP_VERSJON));
|
|
}
|
|
|
|
LoaderDialog::~LoaderDialog() {
|
|
delete ui;
|
|
}
|
|
|
|
void LoaderDialog::load() {
|
|
QFile postNummerFil(":/res/postnummerregister-ansi.txt");
|
|
QTimer *timer = new QTimer(this);
|
|
connect(timer, &QTimer::timeout, this, QOverload<>::of(&LoaderDialog::timerDone));
|
|
|
|
int linjeNum = 0;
|
|
if (postNummerFil.open(QIODevice::ReadOnly)) {
|
|
QTextStream pIn(&postNummerFil);
|
|
QStringList postnrListe = pIn.readAll().split(QRegExp("[\r\n]"),QString::SkipEmptyParts);
|
|
linjeNum = postnrListe.size();
|
|
|
|
ui->progressBar->setMinimum(0);
|
|
ui->progressBar->setMaximum(linjeNum);
|
|
|
|
for (int i = 0; i < linjeNum; ++i) {
|
|
QStringList linjeVerdi = postnrListe.at(i).split(":");
|
|
ui->labelArbeidsBeskrivelse->setText(tr("Laster postkode %1 for by/sted: %2").arg(linjeVerdi.at(0).toInt()).arg(linjeVerdi.at(1)));
|
|
emit sendPostNummer(linjeVerdi.at(0).toInt(), linjeVerdi.at(1));
|
|
ui->progressBar->setValue(i + 1);
|
|
}
|
|
|
|
ui->labelArbeidsBeskrivelse->setText(tr("Alle postkoder lastet inn"));
|
|
}
|
|
|
|
postNummerFil.close();
|
|
timer->setSingleShot(true);
|
|
timer->start(7000);
|
|
}
|
|
|
|
void LoaderDialog::timerDone() {
|
|
emit finish();
|
|
this->hide();
|
|
}
|