summaryrefslogtreecommitdiffstats
path: root/filesystemwidget.cpp
diff options
context:
space:
mode:
authoram <am@f440f766-f032-0410-8965-dc7d17de2ca0>2009-07-18 17:54:27 +0000
committeram <am@f440f766-f032-0410-8965-dc7d17de2ca0>2009-07-18 17:54:27 +0000
commit80bf76dc318276f67eeec32b8f68e82cf4bb7e62 (patch)
tree262a57a754dcbe01f0a21dd9c69513807be3369b /filesystemwidget.cpp
parenta477a1998c03bc0e7251463aff5486e3c0872d23 (diff)
downloadSheMov-80bf76dc318276f67eeec32b8f68e82cf4bb7e62.tar.gz
SheMov-80bf76dc318276f67eeec32b8f68e82cf4bb7e62.tar.bz2
SheMov-80bf76dc318276f67eeec32b8f68e82cf4bb7e62.zip
Again huge changes (should go on vacation more often :))
-turned archive tab into a QDialog -fixed duplicate handling in ListModel -fixed html output in archive dialog -actually made archiving work -changed covertype to text in database -fixed bug with covertype in coveritem git-svn-id: file:///var/svn/repos2/shemov/trunk@390 f440f766-f032-0410-8965-dc7d17de2ca0
Diffstat (limited to 'filesystemwidget.cpp')
-rw-r--r--filesystemwidget.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/filesystemwidget.cpp b/filesystemwidget.cpp
index 349176b..d72d175 100644
--- a/filesystemwidget.cpp
+++ b/filesystemwidget.cpp
@@ -32,6 +32,7 @@
#include "helper.h"
#include "messagedialog.h"
#include "extractordialog.h"
+#include "archiveeditwidget.h"
FilesystemWidget::FilesystemWidget(QWidget *parent) : QWidget(parent) {
mModel = new QDirModel;
@@ -117,6 +118,11 @@ FilesystemWidget::FilesystemWidget(QWidget *parent) : QWidget(parent) {
setLayout(mainLayout);
}
+void FilesystemWidget::setArchiveDialog(ArchiveEditDialog *dlg){
+ mAEDialog = dlg;
+ mAEDialog->setDirModel(mModel);
+}
+
void FilesystemWidget::directoryChanged(const QModelIndex &selected, const QModelIndex &deselected){
QModelIndex real = mDirProxy->mapToSource(selected);
if(!real.isValid()){
@@ -366,6 +372,23 @@ void FilesystemWidget::extract(const QString &destDir){
dlg.exec();
}
+void FilesystemWidget::archiveFiles(){
+ QModelIndexList selected = fileView()->selectionModel()->selectedRows();
+ if(selected.isEmpty()){
+ return;
+ }
+ QSortFilterProxyModel *proxy = static_cast<QSortFilterProxyModel*>(mFileView->model());
+ QStringList files;
+ foreach(QModelIndex idx, selected){
+ QModelIndex src = proxy->mapToSource(idx);
+ files << mModel->filePath(src);
+ }
+ mAEDialog->setFiles(files);
+ mAEDialog->show();
+ mAEDialog->raise();
+ mAEDialog->activateWindow();
+}
+
void FilesystemWidget::setWindowTitle(const QString &dir){
mWindowTitle = QString("%1 - %2").arg(qApp->applicationName()).arg(dir);
emit windowTitle(mWindowTitle);