1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-21 06:53:53 +00:00

Add ability to clear shortcut/modifier setting with right click.

This commit is contained in:
Aesylwinn 2016-07-27 14:07:53 -04:00
parent 12db6d2114
commit b685c0ce6c
2 changed files with 50 additions and 0 deletions

View file

@ -76,7 +76,32 @@ namespace CSMPrefs
const size_t BlacklistSize = sizeof(Blacklist) / sizeof(int);
if (!mEditorActive)
{
if (value == Qt::RightButton)
{
// Clear modifier
QKeySequence sequence;
int modifier = 0;
State::get().getShortcutManager().getSequence(getKey(), sequence, modifier);
modifier = 0;
State::get().getShortcutManager().setSequence(getKey(), sequence, modifier);
// Store
{
std::string value = State::get().getShortcutManager().convertToString(sequence, modifier);
QMutexLocker lock(getMutex());
getValues().setString(getKey(), getParent()->getKey(), value);
}
// Update button
mButton->setText("");
}
return false;
}
// Handle blacklist
for (size_t i = 0; i < BlacklistSize; ++i)

View file

@ -108,7 +108,32 @@ namespace CSMPrefs
const size_t BlacklistSize = sizeof(Blacklist) / sizeof(int);
if (!mEditorActive)
{
if (value == Qt::RightButton && !active)
{
// Clear sequence
QKeySequence sequence;
int modifier = 0;
State::get().getShortcutManager().getSequence(getKey(), sequence, modifier);
sequence = QKeySequence(0, 0, 0, 0);
State::get().getShortcutManager().setSequence(getKey(), sequence, modifier);
// Store
{
std::string value = State::get().getShortcutManager().convertToString(sequence, modifier);
QMutexLocker lock(getMutex());
getValues().setString(getKey(), getParent()->getKey(), value);
}
// Update button
mButton->setText("");
}
return false;
}
// Handle blacklist
for (size_t i = 0; i < BlacklistSize; ++i)