From 4e2407b3ba0542d1b769c5437633f3cc9da2bfc1 Mon Sep 17 00:00:00 2001 From: Florian Geyer Date: Sat, 21 Apr 2012 12:15:21 +0200 Subject: [PATCH] Fix groupChanged signal not emitted in all cases. --- src/gui/GroupView.cpp | 8 +++++++- src/gui/GroupView.h | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/gui/GroupView.cpp b/src/gui/GroupView.cpp index 04599aaba..d3d366379 100644 --- a/src/gui/GroupView.cpp +++ b/src/gui/GroupView.cpp @@ -31,7 +31,8 @@ GroupView::GroupView(Database* db, QWidget* parent) setHeaderHidden(true); setUniformRowHeights(true); - connect(this, SIGNAL(clicked(const QModelIndex&)), SLOT(emitGroupChanged(const QModelIndex&))); + connect(selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), + SLOT(emitGroupChanged())); recInitExpanded(db->rootGroup()); @@ -72,3 +73,8 @@ void GroupView::setModel(QAbstractItemModel* model) Q_UNUSED(model); Q_ASSERT(false); } + +void GroupView::emitGroupChanged() +{ + Q_EMIT groupChanged(currentGroup()); +} diff --git a/src/gui/GroupView.h b/src/gui/GroupView.h index bf4a0a47f..494e0fd6d 100644 --- a/src/gui/GroupView.h +++ b/src/gui/GroupView.h @@ -39,6 +39,7 @@ Q_SIGNALS: private Q_SLOTS: void expandedChanged(const QModelIndex& index); void emitGroupChanged(const QModelIndex& index); + void emitGroupChanged(); private: void recInitExpanded(Group* group);