From b384639799a68ca7d7c07eee518d3ef4b34812d0 Mon Sep 17 00:00:00 2001 From: Arno Date: Wed, 29 Jul 2020 05:16:15 +0200 Subject: Add collapse and expand all to SearchDialog Thought about using QSignalMapper for this, but that would be too convoluted, thus the inline functions. --- searchdialog.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'searchdialog.cpp') diff --git a/searchdialog.cpp b/searchdialog.cpp index acfe1dd..6d81b58 100644 --- a/searchdialog.cpp +++ b/searchdialog.cpp @@ -167,16 +167,30 @@ ActorsAndMore::ActorsAndMore(QWidget *parent, Qt::WindowFlags flags) : QWidget(p mResultModel = new QStandardItemModel; QSortFilterProxyModel *resultProxy = new QSortFilterProxyModel; resultProxy->setSourceModel(mResultModel); - mResultView = new QTreeView; + mResultView = new SmView; mResultView->setModel(resultProxy); connect(mResultView->selectionModel(), &QItemSelectionModel::currentChanged, this, &ActorsAndMore::doData); + QAction *resultCollapseAllA = new QAction(Helper::icon(Qt::transparent, qApp->palette().color(QPalette::Text), QChar(0x2191), true, false), tr("Collapse all"), this); + connect(resultCollapseAllA, &QAction::triggered, this, &ActorsAndMore::collapseAllResult); + mResultView->addAction(resultCollapseAllA); + QAction *resultExpandAllA = new QAction(Helper::icon(Qt::transparent, qApp->palette().color(QPalette::Text), QChar(0x2193), true, false), tr("Expand all"), this); + connect(resultExpandAllA, &QAction::triggered, this, &ActorsAndMore::expandAllResult); + mResultView->addAction(resultExpandAllA); + + // data view mDataModel = new QStandardItemModel; QSortFilterProxyModel *dataProxy = new QSortFilterProxyModel; dataProxy->setSourceModel(mDataModel); - mDataView = new QTreeView; + mDataView = new SmView; mDataView->setExpandsOnDoubleClick(false); connect(mDataView, &QTreeView::doubleClicked, this, &ActorsAndMore::dataDoubleClicked); mDataView->setModel(dataProxy); + QAction *dataCollapseAllA = new QAction(Helper::icon(Qt::transparent, qApp->palette().color(QPalette::Text), QChar(0x2191), true, false), tr("Collapse all"), this); + connect(dataCollapseAllA, &QAction::triggered, this, &ActorsAndMore::collapseAllData); + mDataView->addAction(dataCollapseAllA); + QAction *dataExpandAllA = new QAction(Helper::icon(Qt::transparent, qApp->palette().color(QPalette::Text), QChar(0x2193), true, false), tr("Expand all"), this); + connect(dataExpandAllA, &QAction::triggered, this, &ActorsAndMore::expandAllData); + mDataView->addAction(dataExpandAllA); QHBoxLayout *resultHBL = new QHBoxLayout; resultHBL->addWidget(mResultView); resultHBL->addWidget(mDataView); -- cgit v1.2.3-70-g09d2