From 19e92773947408664a16c20a3816899af48f42a1 Mon Sep 17 00:00:00 2001 From: Montel Laurent Date: Fri, 13 Jul 2012 11:14:21 +0200 Subject: [PATCH] MimeType selection: Allow to enable/disable remove/edit buttons Change-Id: Id13a6e775e5a476ec91329504cf7fbac8bd9c759 Reviewed-by: Nicolas Arnaud-Cormos Reviewed-by: Eike Ziller --- src/plugins/coreplugin/mimetypesettings.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/plugins/coreplugin/mimetypesettings.cpp b/src/plugins/coreplugin/mimetypesettings.cpp index 0e94ce750c2..2e0fb7b9117 100644 --- a/src/plugins/coreplugin/mimetypesettings.cpp +++ b/src/plugins/coreplugin/mimetypesettings.cpp @@ -232,6 +232,7 @@ public slots: void removeMagicHeader(); void editMagicHeader(); void resetMimeTypes(); + void updateMagicHeaderButtons(); public: static const QChar kSemiColon; @@ -281,6 +282,11 @@ void MimeTypeSettingsPrivate::configureUi(QWidget *w) connect(m_ui.removeMagicButton, SIGNAL(clicked()), this, SLOT(removeMagicHeader())); connect(m_ui.editMagicButton, SIGNAL(clicked()), this, SLOT(editMagicHeader())); connect(m_ui.resetButton, SIGNAL(clicked()), this, SLOT(resetMimeTypes())); + connect(m_ui.magicHeadersTableWidget->selectionModel(), + SIGNAL(currentChanged(QModelIndex,QModelIndex)), + this, + SLOT(updateMagicHeaderButtons())); + updateMagicHeaderButtons(); } void MimeTypeSettingsPrivate::configureTable(QTableView *tableView) @@ -538,6 +544,15 @@ void MimeTypeSettingsPrivate::resetMimeTypes() m_reset = true; } +void MimeTypeSettingsPrivate::updateMagicHeaderButtons() +{ + const QModelIndex &modelIndex = m_ui.magicHeadersTableWidget->selectionModel()->currentIndex(); + const bool enabled(modelIndex.isValid()); + + m_ui.removeMagicButton->setEnabled(enabled); + m_ui.editMagicButton->setEnabled(enabled); +} + // MimeTypeSettingsPage MimeTypeSettings::MimeTypeSettings(QObject *parent) : IOptionsPage(parent)