Sayonara Player
GUI_Shortcuts.h
1 /* GUI_Shortcuts.h */
2 
3 /* Copyright (C) 2011-2016 Lucio Carreras
4  *
5  * This file is part of sayonara player
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11 
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16 
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 
22 
23 #ifndef GUI_SHORTCUTS_H
24 #define GUI_SHORTCUTS_H
25 
26 
27 #include "GUI/Preferences/ui_GUI_Shortcuts.h"
28 #include "GUI/Helper/Shortcuts/ShortcutHandler.h"
29 
30 #include "Interfaces/PreferenceDialog/PreferenceWidgetInterface.h"
31 
32 #include <QPushButton>
33 #include <QLineEdit>
34 #include <QMap>
35 #include <QKeyEvent>
36 
37 #include <tuple>
38 
39 class GUI_ShortcutEntry;
40 
47  private Ui::GUI_Shortcuts
48 {
49  Q_OBJECT
50 
51  friend class PreferenceWidgetInterface;
52  friend class PreferenceInterface<SayonaraWidget>;
53 
54 public:
55  GUI_Shortcuts(QWidget* parent=nullptr);
56 
57  QString get_action_name() const override;
58 
59  void revert() override;
60  void commit() override;
61 
62 
63 private:
64  ShortcutHandler* _sch = nullptr;
66 
67 private:
68  void language_changed() override;
69  void init_ui() override;
70 
71 private slots:
72  void test_pressed(const QList<QKeySequence>& sequences);
73  void sequence_entered();
74 
75 
76 };
77 
78 #endif // GUI_SHORTCUTS_H
The delegate class for displaying a shortcut.
Definition: GUI_ShortcutEntry.h:34
void revert() override
This method is called, when cancel is clicked. So the gui should be re-initialized when this method i...
Definition: ui_GUI_Shortcuts.h:92
A singleton class for retrieving shortcuts.
Definition: ShortcutHandler.h:41
virtual void init_ui()=0
call setup_parent(this) here. initialize compoenents and connections here. After calling setup_parent...
Template class for implementing preference dialogs and preference widgets.
Definition: PreferenceInterface.h:70
QString get_action_name() const override
has to be implemented and should return the translated action text
void commit() override
This method is called, when OK or apply is pressed. So all settings should be written there...
Abstract Interface you should use when creating a preferences item.
Definition: PreferenceWidgetInterface.h:41
The GUI_Shortcuts class.
Definition: GUI_Shortcuts.h:45
void language_changed() override
automatically called when language has changed. When overriding this method. Overriding this method s...
Definition: PreferenceInterface.h:116
Definition: org_mpris_media_player2_adaptor.h:20