Help: Remove OpenPagesManager::instance()

It's owned by the HelpWidget now, and should be accessed through that.

Task-number: QTCREATORBUG-20558
Change-Id: I99118bb966922e6b4d356cf892d7604365357785
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Eike Ziller
2019-09-11 16:05:18 +02:00
parent 4610759aed
commit 4f19046d75
5 changed files with 22 additions and 26 deletions

View File

@@ -212,8 +212,10 @@ HelpPluginPrivate::HelpPluginPrivate()
m_centralWidget = new CentralWidget(Context("Help.CentralHelpWidget")); m_centralWidget = new CentralWidget(Context("Help.CentralHelpWidget"));
connect(m_centralWidget, &HelpWidget::sourceChanged, connect(m_centralWidget, &HelpWidget::sourceChanged,
this, &HelpPluginPrivate::updateSideBarSource); this, &HelpPluginPrivate::updateSideBarSource);
connect(m_centralWidget, &CentralWidget::closeButtonClicked, connect(m_centralWidget,
&OpenPagesManager::instance(), &OpenPagesManager::closeCurrentPage); &CentralWidget::closeButtonClicked,
m_centralWidget->openPagesManager(),
&OpenPagesManager::closeCurrentPage);
connect(LocalHelpManager::instance(), &LocalHelpManager::returnOnCloseChanged, connect(LocalHelpManager::instance(), &LocalHelpManager::returnOnCloseChanged,
m_centralWidget, &CentralWidget::updateCloseButton); m_centralWidget, &CentralWidget::updateCloseButton);
@@ -298,7 +300,9 @@ HelpPluginPrivate::HelpPluginPrivate()
Command *ctrlTab = ActionManager::registerAction(action, Core::Constants::GOTOPREVINHISTORY, Command *ctrlTab = ActionManager::registerAction(action, Core::Constants::GOTOPREVINHISTORY,
modecontext); modecontext);
windowMenu->addAction(ctrlTab, Core::Constants::G_WINDOW_NAVIGATE); windowMenu->addAction(ctrlTab, Core::Constants::G_WINDOW_NAVIGATE);
connect(action, &QAction::triggered, &OpenPagesManager::instance(), connect(action,
&QAction::triggered,
m_centralWidget->openPagesManager(),
&OpenPagesManager::gotoPreviousPage); &OpenPagesManager::gotoPreviousPage);
// Goto Next In History Action // Goto Next In History Action
@@ -306,7 +310,9 @@ HelpPluginPrivate::HelpPluginPrivate()
Command *ctrlShiftTab = ActionManager::registerAction(action, Core::Constants::GOTONEXTINHISTORY, Command *ctrlShiftTab = ActionManager::registerAction(action, Core::Constants::GOTONEXTINHISTORY,
modecontext); modecontext);
windowMenu->addAction(ctrlShiftTab, Core::Constants::G_WINDOW_NAVIGATE); windowMenu->addAction(ctrlShiftTab, Core::Constants::G_WINDOW_NAVIGATE);
connect(action, &QAction::triggered, &OpenPagesManager::instance(), connect(action,
&QAction::triggered,
m_centralWidget->openPagesManager(),
&OpenPagesManager::gotoNextPage); &OpenPagesManager::gotoNextPage);
} }
@@ -725,7 +731,7 @@ void HelpPluginPrivate::doSetupIfNeeded()
if (m_setupNeeded) { if (m_setupNeeded) {
resetFilter(); resetFilter();
m_setupNeeded = false; m_setupNeeded = false;
OpenPagesManager::instance().setupInitialPages(); m_centralWidget->openPagesManager()->setupInitialPages();
LocalHelpManager::bookmarkManager().setupBookmarkModels(); LocalHelpManager::bookmarkManager().setupBookmarkModels();
} }
} }

View File

@@ -252,7 +252,7 @@ HelpWidget::HelpWidget(const Core::Context &context, WidgetStyle style, QWidget
if (style == ModeWidget) { if (style == ModeWidget) {
layout->addWidget(new Utils::StyledSeparator(toolBar)); layout->addWidget(new Utils::StyledSeparator(toolBar));
layout->addWidget(OpenPagesManager::instance().openPagesComboBox(), 10); layout->addWidget(m_openPagesManager->openPagesComboBox(), 10);
} else { } else {
layout->addWidget(new QLabel(), 10); layout->addWidget(new QLabel(), 10);
} }
@@ -441,7 +441,7 @@ void HelpWidget::addSideBar()
Core::SideBarItem *openPagesItem = nullptr; Core::SideBarItem *openPagesItem = nullptr;
if (m_style == ModeWidget) { if (m_style == ModeWidget) {
QWidget *openPagesWidget = OpenPagesManager::instance().openPagesWidget(); QWidget *openPagesWidget = m_openPagesManager->openPagesWidget();
openPagesWidget->setWindowTitle(HelpPlugin::tr(Constants::SB_OPENPAGES)); openPagesWidget->setWindowTitle(HelpPlugin::tr(Constants::SB_OPENPAGES));
openPagesItem = new Core::SideBarItem(openPagesWidget, Constants::HELP_OPENPAGES); openPagesItem = new Core::SideBarItem(openPagesWidget, Constants::HELP_OPENPAGES);
m_openPagesAction = new QAction(tr("Activate Open Help Pages View"), this); m_openPagesAction = new QAction(tr("Activate Open Help Pages View"), this);
@@ -634,6 +634,11 @@ void HelpWidget::activateSideBarItem(const QString &id)
m_sideBar->activateItem(id); m_sideBar->activateItem(id);
} }
OpenPagesManager *HelpWidget::openPagesManager() const
{
return m_openPagesManager;
}
void HelpWidget::setSource(const QUrl &url) void HelpWidget::setSource(const QUrl &url)
{ {
HelpViewer* viewer = currentViewer(); HelpViewer* viewer = currentViewer();

View File

@@ -98,6 +98,8 @@ public:
bool newPage = false); bool newPage = false);
void activateSideBarItem(const QString &id); void activateSideBarItem(const QString &id);
OpenPagesManager *openPagesManager() const;
public: public:
void setSource(const QUrl &url); void setSource(const QUrl &url);
void updateCloseButton(); void updateCloseButton();

View File

@@ -46,17 +46,11 @@
using namespace Core; using namespace Core;
using namespace Help::Internal; using namespace Help::Internal;
OpenPagesManager *OpenPagesManager::m_instance = nullptr;
// -- OpenPagesManager // -- OpenPagesManager
OpenPagesManager::OpenPagesManager(HelpWidget *helpWidget) OpenPagesManager::OpenPagesManager(HelpWidget *helpWidget)
: m_helpWidget(helpWidget) : m_helpWidget(helpWidget)
{ {
Q_ASSERT(!m_instance);
m_instance = this;
m_comboBox = new QComboBox; m_comboBox = new QComboBox;
m_comboBox->setModel(m_helpWidget->model()); m_comboBox->setModel(m_helpWidget->model());
m_comboBox->setContextMenuPolicy(Qt::CustomContextMenu); m_comboBox->setContextMenuPolicy(Qt::CustomContextMenu);
@@ -85,16 +79,9 @@ OpenPagesManager::OpenPagesManager(HelpWidget *helpWidget)
OpenPagesManager ::~OpenPagesManager() OpenPagesManager ::~OpenPagesManager()
{ {
m_instance = nullptr;
delete m_openPagesSwitcher; delete m_openPagesSwitcher;
} }
OpenPagesManager &OpenPagesManager::instance()
{
Q_ASSERT(m_instance);
return *m_instance;
}
QWidget *OpenPagesManager::openPagesWidget() const QWidget *OpenPagesManager::openPagesWidget() const
{ {
if (!m_openPagesWidget) { if (!m_openPagesWidget) {

View File

@@ -53,8 +53,6 @@ public:
OpenPagesManager(HelpWidget *helpWidget); OpenPagesManager(HelpWidget *helpWidget);
~OpenPagesManager() override; ~OpenPagesManager() override;
static OpenPagesManager &instance();
QWidget *openPagesWidget() const; QWidget *openPagesWidget() const;
QComboBox *openPagesComboBox() const; QComboBox *openPagesComboBox() const;
@@ -76,8 +74,6 @@ private:
HelpWidget *m_helpWidget = nullptr; HelpWidget *m_helpWidget = nullptr;
mutable OpenPagesWidget *m_openPagesWidget = nullptr; mutable OpenPagesWidget *m_openPagesWidget = nullptr;
OpenPagesSwitcher *m_openPagesSwitcher = nullptr; OpenPagesSwitcher *m_openPagesSwitcher = nullptr;
static OpenPagesManager *m_instance;
}; };
} // namespace Internal } // namespace Internal