Utils: Return a const list for FancyMainWindow::dockWidgets

Makes s/foreach/for straight forward on the user code side.

Change-Id: I78aa0d06f538ebda491cd238ce81cc155b8d0beb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
hjk
2018-09-26 09:35:47 +02:00
parent e28eb85e8a
commit 1e8ae60dce
3 changed files with 9 additions and 9 deletions

View File

@@ -366,7 +366,7 @@ FancyMainWindowPrivate::FancyMainWindowPrivate(FancyMainWindow *parent) :
m_autoHideTitleBars.setChecked(true);
QObject::connect(&m_autoHideTitleBars, &QAction::toggled, q, [this](bool) {
foreach (QDockWidget *dock, q->dockWidgets()) {
for (QDockWidget *dock : q->dockWidgets()) {
if (auto titleBar = dynamic_cast<TitleBarWidget *>(dock->titleBarWidget()))
titleBar->updateChildren();
}
@@ -427,7 +427,7 @@ void FancyMainWindow::setTrackingEnabled(bool enabled)
{
if (enabled) {
d->m_handleDockVisibilityChanges = true;
foreach (QDockWidget *dockWidget, dockWidgets())
for (QDockWidget *dockWidget : dockWidgets())
dockWidget->setProperty(dockWidgetActiveState, dockWidget->isVisible());
} else {
d->m_handleDockVisibilityChanges = false;
@@ -456,7 +456,7 @@ void FancyMainWindow::contextMenuEvent(QContextMenuEvent *event)
void FancyMainWindow::handleVisibilityChanged(bool visible)
{
d->m_handleDockVisibilityChanges = false;
foreach (QDockWidget *dockWidget, dockWidgets()) {
for (QDockWidget *dockWidget : dockWidgets()) {
if (dockWidget->isFloating()) {
dockWidget->setVisible(visible
&& dockWidget->property(dockWidgetActiveState).toBool());
@@ -492,7 +492,7 @@ QHash<QString, QVariant> FancyMainWindow::saveSettings() const
settings.insert(QLatin1String(AutoHideTitleBarsKey),
d->m_autoHideTitleBars.isChecked());
settings.insert(ShowCentralWidgetKey, d->m_showCentralWidget.isChecked());
foreach (QDockWidget *dockWidget, dockWidgets()) {
for (QDockWidget *dockWidget : dockWidgets()) {
settings.insert(dockWidget->objectName(),
dockWidget->property(dockWidgetActiveState));
}
@@ -507,13 +507,13 @@ void FancyMainWindow::restoreSettings(const QHash<QString, QVariant> &settings)
bool on = settings.value(QLatin1String(AutoHideTitleBarsKey), true).toBool();
d->m_autoHideTitleBars.setChecked(on);
d->m_showCentralWidget.setChecked(settings.value(ShowCentralWidgetKey, true).toBool());
foreach (QDockWidget *widget, dockWidgets()) {
for (QDockWidget *widget : dockWidgets()) {
widget->setProperty(dockWidgetActiveState,
settings.value(widget->objectName(), false));
}
}
QList<QDockWidget *> FancyMainWindow::dockWidgets() const
const QList<QDockWidget *> FancyMainWindow::dockWidgets() const
{
return findChildren<QDockWidget *>();
}
@@ -577,7 +577,7 @@ QAction *FancyMainWindow::showCentralWidgetAction() const
void FancyMainWindow::setDockActionsVisible(bool v)
{
foreach (const QDockWidget *dockWidget, dockWidgets())
for (const QDockWidget *dockWidget : dockWidgets())
dockWidget->toggleViewAction()->setVisible(v);
d->m_showCentralWidget.setVisible(v);
d->m_autoHideTitleBars.setVisible(v);

View File

@@ -48,7 +48,7 @@ public:
/* The widget passed in should have an objectname set
* which will then be used as key for QSettings. */
QDockWidget *addDockForWidget(QWidget *widget, bool immutable = false);
QList<QDockWidget *> dockWidgets() const;
const QList<QDockWidget *> dockWidgets() const;
void setTrackingEnabled(bool enabled);

View File

@@ -318,7 +318,7 @@ void DebuggerMainWindow::onModeChanged(Core::Id mode)
theMainWindow->setDockActionsVisible(false);
// Hide dock widgets manually in case they are floating.
foreach (QDockWidget *dockWidget, theMainWindow->dockWidgets()) {
for (QDockWidget *dockWidget : theMainWindow->dockWidgets()) {
if (dockWidget->isFloating())
dockWidget->hide();
}