diff --git a/src/plugins/projectexplorer/kitconfigwidget.cpp b/src/plugins/projectexplorer/kitconfigwidget.cpp index e0eb8264a4b..7e8a8ab7569 100644 --- a/src/plugins/projectexplorer/kitconfigwidget.cpp +++ b/src/plugins/projectexplorer/kitconfigwidget.cpp @@ -59,4 +59,20 @@ QString KitConfigWidget::msgManage() return tr("Manage..."); } +void KitConfigWidget::setPalette(const QPalette &p) +{ + if (mainWidget()) + mainWidget()->setPalette(p); + if (buttonWidget()) + buttonWidget()->setPalette(p); +} + +void KitConfigWidget::setStyle(QStyle *s) +{ + if (mainWidget()) + mainWidget()->setStyle(s); + if (buttonWidget()) + buttonWidget()->setStyle(s); +} + } // namespace ProjectExplorer diff --git a/src/plugins/projectexplorer/kitconfigwidget.h b/src/plugins/projectexplorer/kitconfigwidget.h index 0ccc36dd91a..65258357dce 100644 --- a/src/plugins/projectexplorer/kitconfigwidget.h +++ b/src/plugins/projectexplorer/kitconfigwidget.h @@ -72,6 +72,9 @@ public: Kit *kit() const { return m_kit; } + virtual void setPalette(const QPalette &p); + virtual void setStyle(QStyle *s); + signals: void dirty(); diff --git a/src/plugins/projectexplorer/kitinformationconfigwidget.cpp b/src/plugins/projectexplorer/kitinformationconfigwidget.cpp index 3797a038878..db62738ab5e 100644 --- a/src/plugins/projectexplorer/kitinformationconfigwidget.cpp +++ b/src/plugins/projectexplorer/kitinformationconfigwidget.cpp @@ -93,6 +93,12 @@ QString SysRootInformationConfigWidget::toolTip() const "Leave empty when building for the desktop."); } +void SysRootInformationConfigWidget::setPalette(const QPalette &p) +{ + KitConfigWidget::setPalette(p); + m_chooser->setOkColor(p.color(QPalette::Active, QPalette::Text)); +} + void SysRootInformationConfigWidget::refresh() { if (!m_ignoreChange) diff --git a/src/plugins/projectexplorer/kitinformationconfigwidget.h b/src/plugins/projectexplorer/kitinformationconfigwidget.h index c21ef0cdb5a..40e518e85a9 100644 --- a/src/plugins/projectexplorer/kitinformationconfigwidget.h +++ b/src/plugins/projectexplorer/kitinformationconfigwidget.h @@ -72,6 +72,8 @@ public: QWidget *mainWidget() const; QString toolTip() const; + void setPalette(const QPalette &p); + private: void pathWasChanged(); diff --git a/src/plugins/projectexplorer/miniprojecttargetselector.cpp b/src/plugins/projectexplorer/miniprojecttargetselector.cpp index b0cbad1f1fe..ccde03301c4 100644 --- a/src/plugins/projectexplorer/miniprojecttargetselector.cpp +++ b/src/plugins/projectexplorer/miniprojecttargetselector.cpp @@ -583,22 +583,16 @@ void KitAreaWidget::setKit(Kit *k) if (k && k->isMutable(ki->id())) { KitConfigWidget *widget = ki->createConfigWidget(k); m_widgets << widget; - QList rowWidgets; QLabel *label = new QLabel(widget->displayName()); m_labels << label; - rowWidgets.append(label); - rowWidgets.append(widget->mainWidget()); - rowWidgets.append(widget->buttonWidget()); + widget->setStyle(QStyleFactory::create(QLatin1String("fusion"))); + widget->setPalette(palette()); + + m_layout->addWidget(label, row, 0); + m_layout->addWidget(widget->mainWidget(), row, 1); + m_layout->addWidget(widget->buttonWidget(), row, 2); - for (int i = 0; i < rowWidgets.count(); ++i) { - QWidget *w = rowWidgets.at(i); - m_layout->addWidget(w, row, i); - if (w && i > 0) { - w->setStyle(QStyleFactory::create(QLatin1String("fusion"))); - w->setPalette(palette()); - } - } ++row; } }