Improve property offering in Utils::PathChooser

Add notifier to path property.
Add promptDialogFilter to property list.

Change-Id: Ic0e5dbdc1a2c1ac64477baeee5f55bc4416bc526
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
This commit is contained in:
Andrew Knight
2013-07-13 14:44:26 +03:00
parent c32db57514
commit e349fb48b4
2 changed files with 10 additions and 1 deletions

View File

@@ -246,6 +246,7 @@ PathChooser::PathChooser(QWidget *parent) :
connect(d->m_lineEdit, SIGNAL(validChanged()), this, SIGNAL(validChanged())); connect(d->m_lineEdit, SIGNAL(validChanged()), this, SIGNAL(validChanged()));
connect(d->m_lineEdit, SIGNAL(validChanged(bool)), this, SIGNAL(validChanged(bool))); connect(d->m_lineEdit, SIGNAL(validChanged(bool)), this, SIGNAL(validChanged(bool)));
connect(d->m_lineEdit, SIGNAL(editingFinished()), this, SIGNAL(editingFinished())); connect(d->m_lineEdit, SIGNAL(editingFinished()), this, SIGNAL(editingFinished()));
connect(d->m_lineEdit, SIGNAL(textChanged(QString)), this, SLOT(slotTextChanged()));
d->m_lineEdit->setMinimumWidth(120); d->m_lineEdit->setMinimumWidth(120);
d->m_hLayout->addWidget(d->m_lineEdit); d->m_hLayout->addWidget(d->m_lineEdit);
@@ -421,6 +422,11 @@ void PathChooser::slotBrowse()
d->m_lineEdit->triggerChanged(); d->m_lineEdit->triggerChanged();
} }
void PathChooser::slotTextChanged()
{
emit pathChanged(path());
}
bool PathChooser::isValid() const bool PathChooser::isValid() const
{ {
return d->m_lineEdit->isValid(); return d->m_lineEdit->isValid();

View File

@@ -50,8 +50,9 @@ class QTCREATOR_UTILS_EXPORT PathChooser : public QWidget
{ {
Q_OBJECT Q_OBJECT
Q_ENUMS(Kind) Q_ENUMS(Kind)
Q_PROPERTY(QString path READ path WRITE setPath DESIGNABLE true) Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged DESIGNABLE true)
Q_PROPERTY(QString promptDialogTitle READ promptDialogTitle WRITE setPromptDialogTitle DESIGNABLE true) Q_PROPERTY(QString promptDialogTitle READ promptDialogTitle WRITE setPromptDialogTitle DESIGNABLE true)
Q_PROPERTY(QString promptDialogFilter READ promptDialogFilter WRITE setPromptDialogFilter DESIGNABLE true)
Q_PROPERTY(Kind expectedKind READ expectedKind WRITE setExpectedKind DESIGNABLE true) Q_PROPERTY(Kind expectedKind READ expectedKind WRITE setExpectedKind DESIGNABLE true)
Q_PROPERTY(QString baseDirectory READ baseDirectory WRITE setBaseDirectory DESIGNABLE true) Q_PROPERTY(QString baseDirectory READ baseDirectory WRITE setBaseDirectory DESIGNABLE true)
Q_PROPERTY(QStringList commandVersionArguments READ commandVersionArguments WRITE setCommandVersionArguments) Q_PROPERTY(QStringList commandVersionArguments READ commandVersionArguments WRITE setCommandVersionArguments)
@@ -139,6 +140,7 @@ signals:
void validChanged(); void validChanged();
void validChanged(bool validState); void validChanged(bool validState);
void changed(const QString &text); void changed(const QString &text);
void pathChanged(const QString &path);
void editingFinished(); void editingFinished();
void beforeBrowsing(); void beforeBrowsing();
void browsingFinished(); void browsingFinished();
@@ -150,6 +152,7 @@ public slots:
private slots: private slots:
void slotBrowse(); void slotBrowse();
void slotTextChanged();
private: private:
PathChooserPrivate *d; PathChooserPrivate *d;