-// EmuFront
-// Copyright 2010 Mikko Keinänen
-//
-// This file is part of EmuFront.
-//
-//
-// EmuFront is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License version 2 as published by
-// the Free Software Foundation and appearing in the file gpl.txt included in the
-// packaging of this file.
-//
-// EmuFront is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with EmuFront. If not, see <http://www.gnu.org/licenses/>.
-
+/*
+** EmuFront
+** Copyright 2010 Mikko Keinänen
+**
+** This file is part of EmuFront.
+**
+**
+** EmuFront is free software: you can redistribute it and/or modify
+** it under the terms of the GNU General Public License version 2 as published by
+** the Free Software Foundation and appearing in the file gpl.txt included in the
+** packaging of this file.
+**
+** EmuFront is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+** GNU General Public License for more details.
+**
+** You should have received a copy of the GNU General Public License
+** along with EmuFront. If not, see <http://www.gnu.org/licenses/>.
+*/
#include <QDir>
#include <QDebug>
#include <QProcess>
#include <QProgressDialog>
#include "fileutil.h"
#include "zlib.h" /* crc32 */
-#include "../exceptions/emufrontexception.h"
-#include "../dataobjects/setup.h"
-#include "../dataobjects/mediaimage.h"
-#include "../dataobjects/mediaimagecontainer.h"
-#include "../dataobjects/mediatype.h"
-#include "../dataobjects/platform.h"
-#include "../db/dbmediaimagecontainer.h"
+#include "emufrontexception.h"
+#include "setup.h"
+#include "mediaimage.h"
+#include "mediaimagecontainer.h"
+#include "mediatype.h"
+#include "platform.h"
+#include "dbmediaimagecontainer.h"
#include "unziphelper.h"
FileUtil::FileUtil(QObject *parent) : QObject(parent)
if (containers.count() >= MIC_BUFFER_SIZE) {
//qDebug() << "We have " << containers.count() << " containers .. storing to db.";
- emit dbUpdateInProgress();
+ showDbUpdating(progressDialog);
dbMic->storeContainers(containers, fp);
- emit dbUpdateFinished();
+ hideDbUpdating(progressDialog);
qDeleteAll(containers);
containers.clear();
//qDebug() << "containers now: " << containers.count();
progressDialog->setValue(list.size());
if (containers.count() > 0) {
//qDebug() << "Storing the rest " << containers.count() << " containers.";
- emit dbUpdateInProgress();
+ //emit dbUpdateInProgress();
+ showDbUpdating(progressDialog);
dbMic->storeContainers(containers, fp);
- emit dbUpdateFinished();
+ hideDbUpdating(progressDialog);
+ //emit dbUpdateFinished();
qDeleteAll(containers);
containers.clear();
-
- }
- } catch (EmuFrontException &e) {
- qDebug() << "Got exception " << e.what() << ", aborting & deleting created data objects.";
+ } } catch (EmuFrontException &e) { qDebug() << "Got exception " << e.what() << ", aborting & deleting created data objects.";
qDeleteAll(containers);
throw e;
}
QString ext = filename.section('.', -1);
return supportedFileExtensions.contains(ext, Qt::CaseInsensitive);
}
+
+void FileUtil::showDbUpdating(QProgressDialog *progressDialog)
+{
+ qDebug() << "DB updating";
+ // TODO: the following is not currently working
+ progressDialog->setWindowTitle(tr("Updating DB... please wait!"));
+ progressDialog->setEnabled(false);
+}
+
+void FileUtil::hideDbUpdating(QProgressDialog *progressDialog)
+{
+ qDebug() << "DB update finished";
+ // TODO: the following is not currently working
+ progressDialog->setEnabled(true);
+ progressDialog->setWindowTitle(tr("Scanning files"));
+}
+