From 2ed9db7aab5d60bc419787dad53a491a62ef15e7 Mon Sep 17 00:00:00 2001 From: Mikaƫl Capelle Date: Thu, 31 Dec 2020 11:50:02 +0100 Subject: Move creations of actions to ModListView. --- src/mainwindow.cpp | 8 +++----- src/modlistview.cpp | 6 ++++-- src/modlistview.h | 3 ++- 3 files changed, 9 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index caf533f2..2ca15b00 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -533,12 +533,10 @@ MainWindow::MainWindow(Settings &settings void MainWindow::setupModList() { - auto* actions = new ModListViewActions(m_OrganizerCore, *m_Filters, m_CategoryFactory, this, ui->modList); - ui->modList->setup(m_OrganizerCore, m_CategoryFactory, actions, ui); + ui->modList->setup(m_OrganizerCore, m_CategoryFactory, *m_Filters, this, ui); - connect(actions, &ModListViewActions::overwriteCleared, [=]() { scheduleCheckForProblems(); }); - connect(actions, &ModListViewActions::originModified, this, &MainWindow::originModified); - connect(m_OrganizerCore.modList(), &ModList::clearOverwrite, actions, &ModListViewActions::clearOverwrite); + connect(&ui->modList->actions(), &ModListViewActions::overwriteCleared, [=]() { scheduleCheckForProblems(); }); + connect(&ui->modList->actions(), &ModListViewActions::originModified, this, &MainWindow::originModified); connect(m_OrganizerCore.modList(), &ModList::modPrioritiesChanged, [&]() { m_ArchiveListWriter.write(); }); // keep here for now diff --git a/src/modlistview.cpp b/src/modlistview.cpp index 092ded09..40959e6d 100644 --- a/src/modlistview.cpp +++ b/src/modlistview.cpp @@ -620,16 +620,18 @@ void ModListView::updateGroupByProxy(int groupIndex) } } -void ModListView::setup(OrganizerCore& core, CategoryFactory& factory, ModListViewActions* actions, Ui::MainWindow* mwui) + +void ModListView::setup(OrganizerCore& core, CategoryFactory& factory, FilterList& filters, MainWindow* mw, Ui::MainWindow* mwui) { // attributes m_core = &core; m_categories = &factory; - m_actions = actions; + m_actions = new ModListViewActions(core, filters, factory, mw, this); ui = { mwui->groupCombo, mwui->activeModsCounter, mwui->modFilterEdit, mwui->clearFiltersButton }; connect(m_core, &OrganizerCore::modInstalled, this, &ModListView::onModInstalled); connect(core.modList(), &ModList::modPrioritiesChanged, this, &ModListView::onModPrioritiesChanged); + connect(core.modList(), &ModList::clearOverwrite, m_actions, &ModListViewActions::clearOverwrite); m_byPriorityProxy = new ModListByPriorityProxy(core.currentProfile(), core, this); m_byPriorityProxy->setSourceModel(core.modList()); diff --git a/src/modlistview.h b/src/modlistview.h index e9387cfd..1678d01e 100644 --- a/src/modlistview.h +++ b/src/modlistview.h @@ -16,6 +16,7 @@ namespace Ui { class MainWindow; } class CategoryFactory; class FilterList; class OrganizerCore; +class MainWindow; class Profile; class ModListByPriorityProxy; class ModListViewActions; @@ -38,7 +39,7 @@ public: explicit ModListView(QWidget* parent = 0); void setModel(QAbstractItemModel* model) override; - void setup(OrganizerCore& core, CategoryFactory& factory, ModListViewActions* actions, Ui::MainWindow* mwui); + void setup(OrganizerCore& core, CategoryFactory& factory, FilterList& filters, MainWindow* mw, Ui::MainWindow* mwui); // set the current profile // -- cgit v1.3.1