aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-05-25 06:55:36 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-05-25 06:55:36 +0000
commitb312fcd85c5c3569ebe5c6622ba31c915cdf1dde (patch)
tree79fa1bf79b2729c43cbb4614d6dab31a726be265 /src
parentb4814ea5b6b433dd6a3ae9800e5c2998046c5807 (diff)
downloadqmmp-b312fcd85c5c3569ebe5c6622ba31c915cdf1dde.tar.gz
qmmp-b312fcd85c5c3569ebe5c6622ba31c915cdf1dde.tar.bz2
qmmp-b312fcd85c5c3569ebe5c6622ba31c915cdf1dde.zip
added feature to restore default shortcuts
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@5019 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src')
-rw-r--r--src/plugins/Ui/skinned/actionmanager.cpp10
-rw-r--r--src/plugins/Ui/skinned/actionmanager.h1
-rw-r--r--src/plugins/Ui/skinned/forms/hotkeyeditor.ui49
-rw-r--r--src/plugins/Ui/skinned/hotkeyeditor.cpp13
-rw-r--r--src/plugins/Ui/skinned/hotkeyeditor.h1
5 files changed, 53 insertions, 21 deletions
diff --git a/src/plugins/Ui/skinned/actionmanager.cpp b/src/plugins/Ui/skinned/actionmanager.cpp
index b92866afe..9d8d72de7 100644
--- a/src/plugins/Ui/skinned/actionmanager.cpp
+++ b/src/plugins/Ui/skinned/actionmanager.cpp
@@ -136,6 +136,7 @@ QAction *ActionManager::createAction(QString name, QString confKey, QString key,
{
QAction *action = new QAction(name, this);
action->setShortcut(m_settings->value(confKey, key).toString());
+ action->setProperty("defaultShortcut", key);
action->setObjectName(confKey);
if(iconName.isEmpty())
return action;
@@ -176,3 +177,12 @@ void ActionManager::saveActions()
settings.setValue(QString("SkinnedShortcuts/")+action->objectName(), action->shortcut());
}
}
+
+void ActionManager::resetShortcuts()
+{
+ foreach (QAction *action, m_actions.values())
+ {
+ action->setShortcut(action->property("defaultShortcut").toString());
+ qDebug("=%s=",qPrintable(action->property("defaultShortcut").toString()));
+ }
+}
diff --git a/src/plugins/Ui/skinned/actionmanager.h b/src/plugins/Ui/skinned/actionmanager.h
index 19b98ba5c..b3f88995e 100644
--- a/src/plugins/Ui/skinned/actionmanager.h
+++ b/src/plugins/Ui/skinned/actionmanager.h
@@ -103,6 +103,7 @@ public:
QAction *use(int type, const QObject *receiver, const char *member);
QList<QAction *> actions();
void saveActions();
+ void resetShortcuts();
static ActionManager* instance();
private:
diff --git a/src/plugins/Ui/skinned/forms/hotkeyeditor.ui b/src/plugins/Ui/skinned/forms/hotkeyeditor.ui
index 128223c4e..f2d49bd0c 100644
--- a/src/plugins/Ui/skinned/forms/hotkeyeditor.ui
+++ b/src/plugins/Ui/skinned/forms/hotkeyeditor.ui
@@ -14,7 +14,34 @@
<string notr="true">Shortcuts</string>
</property>
<layout class="QGridLayout" name="gridLayout">
- <item row="0" column="0" colspan="2">
+ <item row="1" column="1">
+ <spacer name="horizontalSpacer_7">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>262</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="1" column="0">
+ <widget class="QPushButton" name="changeShortcutButton">
+ <property name="text">
+ <string>Change shortcut...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2">
+ <widget class="QPushButton" name="resetShortcutsButton">
+ <property name="text">
+ <string>Reset</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="3">
<widget class="QTreeWidget" name="shortcutTreeWidget">
<property name="alternatingRowColors">
<bool>true</bool>
@@ -34,26 +61,6 @@
</column>
</widget>
</item>
- <item row="1" column="0">
- <widget class="QPushButton" name="changeShortcutButton">
- <property name="text">
- <string>Change shortcut...</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <spacer name="horizontalSpacer_7">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>262</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
</layout>
</widget>
<resources/>
diff --git a/src/plugins/Ui/skinned/hotkeyeditor.cpp b/src/plugins/Ui/skinned/hotkeyeditor.cpp
index 951994a43..de5e7a49d 100644
--- a/src/plugins/Ui/skinned/hotkeyeditor.cpp
+++ b/src/plugins/Ui/skinned/hotkeyeditor.cpp
@@ -18,6 +18,7 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
+#include <QMessageBox>
#include "actionmanager.h"
#include "hotkeyeditor.h"
#include "shortcutdialog.h"
@@ -51,6 +52,7 @@ void HotkeyEditor::on_changeShortcutButton_clicked()
void HotkeyEditor::loadShortcuts()
{
+ m_ui->shortcutTreeWidget->clear();
//playback
QTreeWidgetItem *item = new QTreeWidgetItem (m_ui->shortcutTreeWidget, QStringList() << tr("Playback"));
for(int i = ActionManager::PLAY; i <= ActionManager::CLEAR_QUEUE; ++i)
@@ -85,3 +87,14 @@ void HotkeyEditor::loadShortcuts()
m_ui->shortcutTreeWidget->resizeColumnToContents(0);
m_ui->shortcutTreeWidget->resizeColumnToContents(1);
}
+
+void HotkeyEditor::on_resetShortcutsButton_clicked()
+{
+ if(QMessageBox::question(this, tr("Reset Shortcuts"),
+ tr("Do you want to restore default shortcuts?"),
+ QMessageBox::Yes | QMessageBox::No) == QMessageBox::Yes)
+ {
+ ActionManager::instance()->resetShortcuts();
+ loadShortcuts();
+ }
+}
diff --git a/src/plugins/Ui/skinned/hotkeyeditor.h b/src/plugins/Ui/skinned/hotkeyeditor.h
index a2277b3f5..21a21301d 100644
--- a/src/plugins/Ui/skinned/hotkeyeditor.h
+++ b/src/plugins/Ui/skinned/hotkeyeditor.h
@@ -40,6 +40,7 @@ public:
private slots:
void on_changeShortcutButton_clicked();
+ void on_resetShortcutsButton_clicked();
private:
void loadShortcuts();