From b3791e52d78643ea9a52b51c9838ce3dae3a38a9 Mon Sep 17 00:00:00 2001 From: Leandro Melo <leandro.melo@nokia.com> Date: Mon, 28 Feb 2011 15:29:24 +0100 Subject: [PATCH] Fix setReadOnly method in PathChooser Reviewed-by: dt --- src/libs/utils/pathchooser.cpp | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/libs/utils/pathchooser.cpp b/src/libs/utils/pathchooser.cpp index a486df9887e..0dedc62d57a 100644 --- a/src/libs/utils/pathchooser.cpp +++ b/src/libs/utils/pathchooser.cpp @@ -188,11 +188,6 @@ public: QHBoxLayout *m_hLayout; PathValidatingLineEdit *m_lineEdit; -#ifdef Q_WS_MAC - QPushButton *m_button; -#else - QToolButton *m_button; -#endif PathChooser::Kind m_acceptingKind; QString m_dialogTitleOverride; @@ -268,13 +263,13 @@ PathChooser::~PathChooser() void PathChooser::addButton(const QString &text, QObject *receiver, const char *slotFunc) { #ifdef Q_WS_MAC - m_d->m_button = new QPushButton; + QPushButton *button = new QPushButton; #else - m_d->m_button = new QToolButton; + QToolButton *button = new QToolButton; #endif - m_d->m_button->setText(text); - connect(m_d->m_button, SIGNAL(clicked()), receiver, slotFunc); - m_d->m_hLayout->addWidget(m_d->m_button); + button->setText(text); + connect(button, SIGNAL(clicked()), receiver, slotFunc); + m_d->m_hLayout->addWidget(button); } QAbstractButton *PathChooser::buttonAtIndex(int index) const @@ -323,7 +318,9 @@ bool PathChooser::isReadOnly() const void PathChooser::setReadOnly(bool b) { m_d->m_lineEdit->setReadOnly(b); - m_d->m_button->setEnabled(!b); + const QList<QAbstractButton *> &allButtons = findChildren<QAbstractButton *>(); + foreach (QAbstractButton *button, allButtons) + button->setEnabled(!b); } void PathChooser::slotBrowse() -- GitLab