forked from qt-creator/qt-creator
Help: Remove dependency of IOptionPage's QObject base
Change-Id: Ide7b16406947cc4865653661d0020d657671bc16 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -18,7 +18,7 @@ namespace Help::Internal {
|
|||||||
class FilterSettingsPageWidget : public Core::IOptionsPageWidget
|
class FilterSettingsPageWidget : public Core::IOptionsPageWidget
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
FilterSettingsPageWidget(FilterSettingsPage *page)
|
FilterSettingsPageWidget(const std::function<void()> &onChanged)
|
||||||
{
|
{
|
||||||
LocalHelpManager::setupGuiHelpEngine();
|
LocalHelpManager::setupGuiHelpEngine();
|
||||||
|
|
||||||
@@ -41,9 +41,9 @@ public:
|
|||||||
updateFilterPage);
|
updateFilterPage);
|
||||||
updateFilterPage();
|
updateFilterPage();
|
||||||
|
|
||||||
setOnApply([widget, page] {
|
setOnApply([widget, onChanged] {
|
||||||
if (widget->applySettings(LocalHelpManager::filterEngine()))
|
if (widget->applySettings(LocalHelpManager::filterEngine()))
|
||||||
emit page->filtersChanged();
|
onChanged();
|
||||||
widget->readSettings(LocalHelpManager::filterEngine());
|
widget->readSettings(LocalHelpManager::filterEngine());
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -51,12 +51,12 @@ public:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
FilterSettingsPage::FilterSettingsPage()
|
FilterSettingsPage::FilterSettingsPage(const std::function<void ()> &onChanged)
|
||||||
{
|
{
|
||||||
setId("D.Filters");
|
setId("D.Filters");
|
||||||
setDisplayName(Tr::tr("Filters"));
|
setDisplayName(Tr::tr("Filters"));
|
||||||
setCategory(Help::Constants::HELP_CATEGORY);
|
setCategory(Help::Constants::HELP_CATEGORY);
|
||||||
setWidgetCreator([this] { return new FilterSettingsPageWidget(this); });
|
setWidgetCreator([onChanged] { return new FilterSettingsPageWidget(onChanged); });
|
||||||
}
|
}
|
||||||
|
|
||||||
} // Help::Internal
|
} // Help::Internal
|
||||||
|
|||||||
@@ -9,13 +9,8 @@ namespace Help::Internal {
|
|||||||
|
|
||||||
class FilterSettingsPage : public Core::IOptionsPage
|
class FilterSettingsPage : public Core::IOptionsPage
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
FilterSettingsPage();
|
explicit FilterSettingsPage(const std::function<void()> &onChanged);
|
||||||
|
|
||||||
signals:
|
|
||||||
void filtersChanged();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // Help::Internal
|
} // Help::Internal
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ public:
|
|||||||
QRect m_externalWindowState;
|
QRect m_externalWindowState;
|
||||||
|
|
||||||
DocSettingsPage m_docSettingsPage;
|
DocSettingsPage m_docSettingsPage;
|
||||||
FilterSettingsPage m_filterSettingsPage;
|
FilterSettingsPage m_filterSettingsPage{[this] {setupHelpEngineIfNeeded(); }};
|
||||||
SearchTaskHandler m_searchTaskHandler;
|
SearchTaskHandler m_searchTaskHandler;
|
||||||
GeneralSettingsPage m_generalSettingsPage;
|
GeneralSettingsPage m_generalSettingsPage;
|
||||||
|
|
||||||
@@ -197,8 +197,6 @@ HelpPluginPrivate::HelpPluginPrivate()
|
|||||||
connect(&m_searchTaskHandler, &SearchTaskHandler::search,
|
connect(&m_searchTaskHandler, &SearchTaskHandler::search,
|
||||||
this, &QDesktopServices::openUrl);
|
this, &QDesktopServices::openUrl);
|
||||||
|
|
||||||
connect(&m_filterSettingsPage, &FilterSettingsPage::filtersChanged,
|
|
||||||
this, &HelpPluginPrivate::setupHelpEngineIfNeeded);
|
|
||||||
connect(Core::HelpManager::Signals::instance(),
|
connect(Core::HelpManager::Signals::instance(),
|
||||||
&Core::HelpManager::Signals::documentationChanged,
|
&Core::HelpManager::Signals::documentationChanged,
|
||||||
this,
|
this,
|
||||||
|
|||||||
Reference in New Issue
Block a user