summaryrefslogtreecommitdiffstats
path: root/filesystemwidget.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2013-03-20 21:27:35 +0100
committerArno <am@disconnect.de>2013-03-20 21:27:35 +0100
commit03831d3669ea49a99a15aaf5d17724be8c533b85 (patch)
tree618e3fe63b0430a4dbe604153ab588eb811fd183 /filesystemwidget.cpp
parent457e5328c8fbbf236fb163e90d732a35a583fd2d (diff)
downloadSheMov-03831d3669ea49a99a15aaf5d17724be8c533b85.tar.gz
SheMov-03831d3669ea49a99a15aaf5d17724be8c533b85.tar.bz2
SheMov-03831d3669ea49a99a15aaf5d17724be8c533b85.zip
Use a Thread for collecting file data
blocking the GUI isn't nice, so use a separate Thread to gather all the data for SmDirModel. Populating and changing directory works, but modifying a file is most likely broken.
Diffstat (limited to 'filesystemwidget.cpp')
-rw-r--r--filesystemwidget.cpp16
1 files changed, 6 insertions, 10 deletions
diff --git a/filesystemwidget.cpp b/filesystemwidget.cpp
index 4b7a9c7..b842541 100644
--- a/filesystemwidget.cpp
+++ b/filesystemwidget.cpp
@@ -8,7 +8,6 @@
#include <QtWidgets/QFileSystemModel>
#include <QtWidgets/QTreeView>
#include <QSettings>
-#include <QDir>
#include <QtWidgets/QSplitter>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QHBoxLayout>
@@ -18,16 +17,12 @@
#include <QProcess>
#include <QtWidgets/QApplication>
#include <QtWidgets/QMessageBox>
-#include <QFile>
#include <QtWidgets/QAction>
-#include <QRegExp>
-#include <QFile>
#include <QTextStream>
#include <QSqlQuery>
#include <QClipboard>
#include <QMimeData>
#include <QUrl>
-#include <QList>
#include "filesystemwidget.h"
#include "filesystemdirproxy.h"
@@ -40,13 +35,17 @@
#include "smdirmodel.h"
FilesystemWidget::FilesystemWidget(QWidget *parent) : QWidget(parent), mClipboardMode(None) {
- mModel = new FileSystemModel(this);
+ mModel = new FileSystemModel(this);
mModel->setRootPath("/");
mModel->setFilter(QDir::AllEntries | QDir::NoDot);
mModel->setReadOnly(false);
mIconProvider = new SheMovIconProvider;
mModel->setIconProvider(mIconProvider);
+ QStringList fHeaders = QStringList() << tr("Name") << tr("Size") << tr("Type") << tr("Created") << tr("Md5Sum") << tr("Duration") << tr("Bitrate") << tr("Full Path");
+ mFileModel = new SmDirModel(fHeaders, this);
+ connect(mFileModel, SIGNAL(needResize()), this, SLOT(resizeFileView()));
+
mDirProxy = new FilesystemDirProxy;
mDirProxy->setSourceModel(mModel);
mDirView = new QTreeView;
@@ -64,9 +63,7 @@ FilesystemWidget::FilesystemWidget(QWidget *parent) : QWidget(parent), mClipboar
mFileView = new FileView;
mFileProxy = new FilesystemFileProxy;
- QStringList fHeaders = QStringList() << tr("Name") << tr("Size") << tr("Type") << tr("Created") << tr("Md5Sum") << tr("Duration") << tr("Bitrate") << tr("Full Path");
- mFileModel = new SmDirModel(fHeaders, this);
- connect(mFileModel, SIGNAL(needResize()), this, SLOT(resizeFileView()));
+
mFileProxy->setSourceModel(mFileModel);
mFileView->setModel(mFileProxy);
mFileView->setSortingEnabled(true);
@@ -114,7 +111,6 @@ FilesystemWidget::FilesystemWidget(QWidget *parent) : QWidget(parent), mClipboar
splitter->setStretchFactor(0, 1);
splitter->setStretchFactor(1, 2);
mainLayout->addWidget(splitter);
-
setLayout(mainLayout);
}