Kit: Improve the options page

* Update warning icon as changes happen
* Make clone clone the current settings, not what used to be there
  before changes were made
* Make sure the edited entry is visible in list view
* I find the KitModel much easier to understand now

Task-number: QTCREATORBUG-7862
Task-number: QTCREATORBUG-7803
Change-Id: I124c2e5a96cea7386896084e1027ba79a8be20b7
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This commit is contained in:
Tobias Hunger
2012-10-10 15:34:35 +02:00
parent 47e42e53d0
commit f88636e613
15 changed files with 314 additions and 335 deletions

View File

@@ -54,8 +54,8 @@ QmakeKitConfigWidget::QmakeKitConfigWidget(ProjectExplorer::Kit *k, QWidget *par
m_lineEdit->setContentsMargins(0, 0, 0, 0);
layout->addWidget(m_lineEdit);
discard(); // set up everything according to kit
connect(m_lineEdit, SIGNAL(textEdited(QString)), this, SIGNAL(dirty()));
refresh(); // set up everything according to kit
connect(m_lineEdit, SIGNAL(textEdited(QString)), this, SLOT(mkspecWasChanged(QString)));
}
QString QmakeKitConfigWidget::displayName() const
@@ -68,19 +68,14 @@ void QmakeKitConfigWidget::makeReadOnly()
m_lineEdit->setEnabled(false);
}
void QmakeKitConfigWidget::apply()
{
QmakeKitInformation::setMkspec(m_kit, Utils::FileName::fromString(m_lineEdit->text()));
}
void QmakeKitConfigWidget::discard()
void QmakeKitConfigWidget::refresh()
{
m_lineEdit->setText(QmakeKitInformation::mkspec(m_kit).toString());
}
bool QmakeKitConfigWidget::isDirty() const
void QmakeKitConfigWidget::mkspecWasChanged(const QString &text)
{
return m_lineEdit->text() != QmakeKitInformation::mkspec(m_kit).toString();
QmakeKitInformation::setMkspec(m_kit, Utils::FileName::fromString(text));
}
} // namespace Internal