summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2010-06-18 18:19:59 +0200
committerArno <am@disconnect.de>2010-06-18 18:19:59 +0200
commit874476253f6ce13436f695401ff2f2a13a723753 (patch)
tree302cadd28d6e1ecef3642aa58e2ad21e6d8988df
parentdf74e7f25fe763f100d3d034cc8d54fa0b39ae26 (diff)
downloadSheMov-874476253f6ce13436f695401ff2f2a13a723753.tar.gz
SheMov-874476253f6ce13436f695401ff2f2a13a723753.tar.bz2
SheMov-874476253f6ce13436f695401ff2f2a13a723753.zip
expand/collape actions for SeriesTreeWidget
Implemented expand and collapse actions for SeriesTreeWidget.
-rw-r--r--seriestreewidget.cpp9
-rw-r--r--seriestreewidget.h1
-rw-r--r--shemov.cpp19
-rw-r--r--shemov.h3
4 files changed, 29 insertions, 3 deletions
diff --git a/seriestreewidget.cpp b/seriestreewidget.cpp
index 9b45dcd..e919c20 100644
--- a/seriestreewidget.cpp
+++ b/seriestreewidget.cpp
@@ -153,6 +153,15 @@ void SeriesTreeWidget::writeSettings(){
s.setValue("archive/sortorder", mProxy->sortOrder());
}
+void SeriesTreeWidget::expandCurrent(){
+ QModelIndexList selected = mView->selectionModel()->selectedRows();
+ if(selected.isEmpty()){
+ return;
+ }
+ QModelIndex idx = selected.at(0);
+ mView->expand(idx);
+}
+
void SeriesTreeWidget::filter(){
mProxy->setFilterRegExp(mFilterEdit->text());
}
diff --git a/seriestreewidget.h b/seriestreewidget.h
index 58d217b..972d7d9 100644
--- a/seriestreewidget.h
+++ b/seriestreewidget.h
@@ -30,6 +30,7 @@ class SeriesTreeWidget : public QWidget {
void deleteFromSeries();
void readSettings();
void writeSettings();
+ void expandCurrent();
private slots:
void filter();
diff --git a/shemov.cpp b/shemov.cpp
index 802ffc9..223e6fa 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -360,12 +360,15 @@ void SheMov::createActions(){
//Tree context menu
mNewSeriesA = new QAction(tr("New series..."), this);
- mATree->seriesWidget()->seriesTree()->addAction(mNewSeriesA);
connect(mNewSeriesA, SIGNAL(triggered()), mATree->seriesWidget(), SLOT(newSeries()));
mDeleteFromSeriesA = new QAction(tr("Delete entries..."), this);
- mATree->seriesWidget()->seriesTree()->addAction(mDeleteFromSeriesA);
connect(mDeleteFromSeriesA, SIGNAL(triggered()), mATree->seriesWidget(), SLOT(deleteFromSeries()));
-
+ mExpandAllSeriesA = new QAction(tr("Expand all"), this);
+ connect(mExpandAllSeriesA, SIGNAL(triggered()), mATree->seriesWidget()->seriesTree(), SLOT(expandAll()));
+ mCollapseAllSeriesA = new QAction(tr("Collapse all"), this);
+ connect(mCollapseAllSeriesA, SIGNAL(triggered()), mATree->seriesWidget()->seriesTree(), SLOT(collapseAll()));
+ mExpandCurrentA = new QAction(tr("Expand"), this);
+ connect(mExpandCurrentA, SIGNAL(triggered()), mATree->seriesWidget(), SLOT(expandCurrent()));
// misc
mOpenWithMapperFS = new QSignalMapper(this);
@@ -480,6 +483,16 @@ void SheMov::createMenus(){
sep7->setSeparator(true);
mAVWidget->fileView()->addAction(sep7);
mAVWidget->fileView()->addAction(mPropertiesA);
+
+ //ArchiveTreeView context menu
+ mATree->seriesWidget()->seriesTree()->addAction(mNewSeriesA);
+ mATree->seriesWidget()->seriesTree()->addAction(mDeleteFromSeriesA);
+ QAction *sep8 = new QAction(this);
+ sep8->setSeparator(true);
+ mATree->seriesWidget()->seriesTree()->addAction(sep8);
+ mATree->seriesWidget()->seriesTree()->addAction(mExpandCurrentA);
+ mATree->seriesWidget()->seriesTree()->addAction(mExpandAllSeriesA);
+ mATree->seriesWidget()->seriesTree()->addAction(mCollapseAllSeriesA);
}
void SheMov::createOpenWithMenuFS(){
diff --git a/shemov.h b/shemov.h
index 83db7b9..c397378 100644
--- a/shemov.h
+++ b/shemov.h
@@ -99,6 +99,9 @@ class SheMov : public QMainWindow {
//TreeView Actions
QAction *mNewSeriesA;
QAction *mDeleteFromSeriesA;
+ QAction *mExpandAllSeriesA;
+ QAction *mCollapseAllSeriesA;
+ QAction *mExpandCurrentA;
QActionGroup *mOpenWithGroupFS;
QActionGroup *mOpenWithGroupAV;