summaryrefslogtreecommitdiffstats
path: root/helper.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2010-07-30 19:59:52 +0200
committerArno <am@disconnect.de>2010-07-30 19:59:52 +0200
commit066cc53c2506fb7f7cb7b3b0d888243df611cacd (patch)
tree73af8e7b7ea17255d95a84b3ee9dcd5d6946c171 /helper.cpp
parenta493d6500c33a0956e0165ad53136fa6110a7a64 (diff)
downloadSheMov-066cc53c2506fb7f7cb7b3b0d888243df611cacd.tar.gz
SheMov-066cc53c2506fb7f7cb7b3b0d888243df611cacd.tar.bz2
SheMov-066cc53c2506fb7f7cb7b3b0d888243df611cacd.zip
Bugfix commit
The journey through the internals of SheMov started by fixing SeriesTreeWidget::readSettings(). The selected index didn't really get selected on startup because only QItemSelectionModel::setCurrendt() was called. Replace it with QItemSelectionModel::select() and QTreeView::setCurrent(). Also fix SeriesTreeWidget::writeSettings() to only write selected items to QSettings() when something is selected. While working on selections I realized that there is a serious bug in Helper::moveToArchive. The destination directory in the archive must be created if it doesn't exist. For a testcase I needed an easy way to move files back from the archive to incoming directory, so I added FilesTreeWiget::moveToDirectory(). This lets you move files from the FilesTreeWidget to any directory. During testing I realized that SeriesTreeWidget::deleteFromSeries() QMessageBox() doesn't show files when deleting a series part. Fixed that by adding SeriesParts to file list. Finally a newly added SeriesPart gets selected and selected by expanding it first and then calling QItemSelectionModel::select() To make a long story short: 1. fix SeriesTreeWidget::{read,write}Settings 2. add FilesTreeWidget::moveToDirectory() 3. fix SeriesTreeWidget::deleteFromSeries() QMessageBox 4. fix selecting newly added SeriesParts
Diffstat (limited to 'helper.cpp')
-rw-r--r--helper.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/helper.cpp b/helper.cpp
index 7b49695..9be7066 100644
--- a/helper.cpp
+++ b/helper.cpp
@@ -13,6 +13,7 @@
#include <QCryptographicHash>
#include <QHash>
#include <QSettings>
+#include <QDir>
#include "helper.h"
@@ -90,6 +91,10 @@ namespace Helper {
return QString();
}
}
+ QFileInfo destDir = QFileInfo(destFile.absolutePath());
+ if(!destDir.exists()){
+ QDir::root().mkpath(destFile.absolutePath());
+ }
bool success = QFile::rename(path, destFile.absoluteFilePath());
if(success){
return destFile.absoluteFilePath();