diff options
| author | Daniel Molkentin <daniel.molkentin@nokia.com> | 2010-03-04 19:22:06 +0100 |
|---|---|---|
| committer | Daniel Molkentin <daniel.molkentin@nokia.com> | 2010-03-04 19:22:16 +0100 |
| commit | 22773fc8252c0ca6bd85abe1c93e9cd2eb9f43c4 (patch) | |
| tree | 4fca1f2fcd52781a7a13b044eadf6b61eee06456 | |
| parent | c642d92962ae61dcd6a2706482fd91ceae3fd8d1 (diff) | |
| download | qt-creator-22773fc8252c0ca6bd85abe1c93e9cd2eb9f43c4.tar.gz | |
Shortcutsettings/FakeVim: Indicate modified shortcuts/regexps.
Fixes: QTCREATORBUG-559
| -rw-r--r-- | src/plugins/coreplugin/dialogs/shortcutsettings.cpp | 25 | ||||
| -rw-r--r-- | src/plugins/fakevim/fakevimplugin.cpp | 41 |
2 files changed, 62 insertions, 4 deletions
diff --git a/src/plugins/coreplugin/dialogs/shortcutsettings.cpp b/src/plugins/coreplugin/dialogs/shortcutsettings.cpp index 8393b2def6..cc64b0112c 100644 --- a/src/plugins/coreplugin/dialogs/shortcutsettings.cpp +++ b/src/plugins/coreplugin/dialogs/shortcutsettings.cpp @@ -180,6 +180,21 @@ void ShortcutSettings::keyChanged() if (current && current->data(0, Qt::UserRole).isValid()) { ShortcutItem *scitem = qVariantValue<ShortcutItem *>(current->data(0, Qt::UserRole)); scitem->m_key = QKeySequence(m_key[0], m_key[1], m_key[2], m_key[3]); + if (scitem->m_cmd->defaultKeySequence() != scitem->m_key) { + QFont f = current->font(0); + f.setItalic(true); + current->setFont(0, f); + current->setFont(1, f); + f.setBold(true); + current->setFont(2, f); + } else { + QFont f = current->font(0); + f.setItalic(false); + f.setBold(false); + current->setFont(0, f); + current->setFont(1, f); + current->setFont(2, f); + } current->setText(2, scitem->m_key); } } @@ -333,6 +348,16 @@ void ShortcutSettings::initialize() } item->setText(2, s->m_key); + if (s->m_cmd->defaultKeySequence() != s->m_key) { + QFont f = item->font(0); + f.setItalic(true); + item->setFont(0, f); + item->setFont(1, f); + f.setBold(true); + item->setFont(2, f); + + } + item->setData(0, Qt::UserRole, qVariantFromValue(s)); } } diff --git a/src/plugins/fakevim/fakevimplugin.cpp b/src/plugins/fakevim/fakevimplugin.cpp index a32ccd39e0..be7d5f2cda 100644 --- a/src/plugins/fakevim/fakevimplugin.cpp +++ b/src/plugins/fakevim/fakevimplugin.cpp @@ -390,6 +390,16 @@ void FakeVimExCommandsPage::initialize() item->setText(2, ci->m_regex); item->setData(0, Qt::UserRole, qVariantFromValue(ci)); + + if (ci->m_regex != s_defaultExCommandMap[name].pattern()) { + QFont f = item->font(0); + f.setItalic(true); + item->setFont(0, f); + item->setFont(1, f); + f.setBold(true); + item->setFont(2, f); + } + } commandChanged(0); @@ -402,6 +412,7 @@ void FakeVimExCommandsPage::commandChanged(QTreeWidgetItem *current) m_ui.seqGrp->setEnabled(false); return; } + m_ui.seqGrp->setEnabled(true); CommandItem *citem = qVariantValue<CommandItem *>(current->data(0, Qt::UserRole)); m_ui.regexEdit->setText(citem->m_regex); @@ -417,14 +428,36 @@ void FakeVimExCommandsPage::filterChanged(const QString &f) void FakeVimExCommandsPage::regexChanged() { - UniqueIDManager *uidm = UniqueIDManager::instance(); QTreeWidgetItem *current = m_ui.commandList->currentItem(); - if (current && current->data(0, Qt::UserRole).isValid()) { - CommandItem *citem = qVariantValue<CommandItem *>(current->data(0, Qt::UserRole)); + if (!current) + return; + + UniqueIDManager *uidm = UniqueIDManager::instance(); + CommandItem *citem = qVariantValue<CommandItem *>(current->data(0, Qt::UserRole)); + const QString name = uidm->stringForUniqueIdentifier(citem->m_cmd->id()); + + if (current->data(0, Qt::UserRole).isValid()) { citem->m_regex = m_ui.regexEdit->text(); current->setText(2, citem->m_regex); - s_exCommandMap[uidm->stringForUniqueIdentifier(citem->m_cmd->id())] = QRegExp(citem->m_regex); + s_exCommandMap[name] = QRegExp(citem->m_regex); } + + if (citem->m_regex != s_defaultExCommandMap[name].pattern()) { + QFont f = current->font(0); + f.setItalic(true); + current->setFont(0, f); + current->setFont(1, f); + f.setBold(true); + current->setFont(2, f); + } else { + QFont f = current->font(0); + f.setItalic(false); + f.setBold(false); + current->setFont(0, f); + current->setFont(1, f); + current->setFont(2, f); + } + } void FakeVimExCommandsPage::setRegex(const QString ®ex) |
