summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--seriestreemodel.cpp9
-rw-r--r--seriestreewidget.cpp9
-rw-r--r--seriestreewidget.h1
-rw-r--r--shemov.cpp3
-rw-r--r--shemov.h1
5 files changed, 23 insertions, 0 deletions
diff --git a/seriestreemodel.cpp b/seriestreemodel.cpp
index 0f20f3a..8de3d01 100644
--- a/seriestreemodel.cpp
+++ b/seriestreemodel.cpp
@@ -492,6 +492,15 @@ bool SeriesTreeModel::renameSeries(const QModelIndex &source, const QVariant &va
SmTreeItem *curItem = static_cast<SmTreeItem*>(source.internalPointer());
curItem->setData(Name, value);
emit dataChanged(source, source);
+ for(int i = 0; i < curItem->childCount(); ++i){
+ SmTreeItem *child = curItem->child(i);
+ child->setData(Name, value);
+ }
+ if(curItem->childCount()){
+ QModelIndex start = source.child(0, 0);
+ QModelIndex end = source.child(curItem->childCount() - 1, 0);
+ emit dataChanged(start, end);
+ }
emit needResort();
return true;
}
diff --git a/seriestreewidget.cpp b/seriestreewidget.cpp
index b09d7f7..e717b13 100644
--- a/seriestreewidget.cpp
+++ b/seriestreewidget.cpp
@@ -58,6 +58,8 @@ SeriesTreeWidget::SeriesTreeWidget(QWidget *parent) : QWidget(parent){
}
mView->resizeColumnToContents(0);
mView->setSelectionMode(QAbstractItemView::ExtendedSelection);
+ mView->setEditTriggers(QAbstractItemView::NoEditTriggers);
+ mView->setExpandsOnDoubleClick(false);
connect(mModel, SIGNAL(needResort()), this, SLOT(resort()));
connect(mView, SIGNAL(expanded(QModelIndex)), this, SLOT(itemExpanded(QModelIndex)));
connect(mView, SIGNAL(collapsed(QModelIndex)), this, SLOT(itemCollaped(QModelIndex)));
@@ -268,6 +270,13 @@ void SeriesTreeWidget::expandItems(const QStringList &items){
}
}
+void SeriesTreeWidget::editItem(){
+ QModelIndex current = mView->selectionModel()->currentIndex();
+ if(current.isValid()){
+ mView->edit(current);
+ }
+}
+
void SeriesTreeWidget::addCover(){
QModelIndexList selected = mView->selectionModel()->selectedRows();
if(selected.isEmpty()){
diff --git a/seriestreewidget.h b/seriestreewidget.h
index 2e28c1c..a917501 100644
--- a/seriestreewidget.h
+++ b/seriestreewidget.h
@@ -46,6 +46,7 @@ class SeriesTreeWidget : public QWidget {
void itemExpanded(const QModelIndex &);
void itemCollaped(const QModelIndex &);
void expandItems(const QStringList &items);
+ void editItem();
signals:
void filesReload();
diff --git a/shemov.cpp b/shemov.cpp
index 36b0f1f..4bb7dd9 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -343,6 +343,8 @@ void SheMov::createActions(){
connect(mExpandCurrentA, SIGNAL(triggered()), mATree->seriesWidget(), SLOT(expandCurrent()));
mAddCoverA = new QAction(tr("Add cover..."), this);
connect(mAddCoverA, SIGNAL(triggered()), mATree->seriesWidget(), SLOT(addCover()));
+ mEditItemA = new QAction(tr("Edit..."), this);
+ connect(mEditItemA, SIGNAL(triggered()), mATree->seriesWidget(), SLOT(editItem()));
//Tree view menu
mViewTreeGroup = new QActionGroup(this);
@@ -467,6 +469,7 @@ void SheMov::createMenus(){
//ArchiveTreeView context menu
mATree->seriesWidget()->seriesTree()->addAction(mNewSeriesA);
mATree->seriesWidget()->seriesTree()->addAction(mDeleteFromSeriesA);
+ mATree->seriesWidget()->seriesTree()->addAction(mEditItemA);
QAction *sep4 = new QAction(this);
sep4->setSeparator(true);
mATree->seriesWidget()->seriesTree()->addAction(sep4);
diff --git a/shemov.h b/shemov.h
index 24e00dc..2d7c94e 100644
--- a/shemov.h
+++ b/shemov.h
@@ -92,6 +92,7 @@ class SheMov : public QMainWindow {
QAction *mExpandCurrentA;
QAction *mNewMovieWizardA;
QAction *mAddCoverA;
+ QAction *mEditItemA;
//TreeView View Actions
QAction *mShowLocalA;