SDRAngel  4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
editcommanddialog.h
Go to the documentation of this file.
1 // Copyright (C) 2018 Edouard Griffiths, F4EXB //
3 // //
4 // This program is free software; you can redistribute it and/or modify //
5 // it under the terms of the GNU General Public License as published by //
6 // the Free Software Foundation as version 3 of the License, or //
7 // (at your option) any later version. //
8 // //
9 // This program is distributed in the hope that it will be useful, //
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of //
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
12 // GNU General Public License V3 for more details. //
13 // //
14 // You should have received a copy of the GNU General Public License //
15 // along with this program. If not, see <http://www.gnu.org/licenses/>. //
17 
18 #ifndef SDRGUI_GUI_EDITCOMMANDDIALOG_H_
19 #define SDRGUI_GUI_EDITCOMMANDDIALOG_H_
20 
21 #include <QDialog>
22 #include <vector>
23 
24 #include "export.h"
25 
26 namespace Ui {
27  class EditCommandDialog;
28 }
29 
30 class Command;
31 class CommandKeyReceiver;
32 
33 class SDRGUI_API EditCommandDialog : public QDialog {
34  Q_OBJECT
35 
36 public:
37  explicit EditCommandDialog(const QStringList& groups, const QString& group, QWidget* parent = 0);
39 
40  QString getGroup() const;
41  void setGroup(const QString& group);
42  QString getDescription() const;
43  void setDescription(const QString& description);
44  QString getCommand() const;
45  void setCommand(const QString& command);
46  QString getArguments() const;
47  void setArguments(const QString& arguments);
48  Qt::Key getKey() const;
49  Qt::KeyboardModifiers getKeyModifiers() const;
50  void setKey(Qt::Key key, Qt::KeyboardModifiers modifiers);
51  bool getAssociateKey() const;
52  void setAssociateKey(bool associate);
53  bool getRelease() const;
54  void setRelease(bool release);
55 
56  void toCommand(Command& command) const;
57  void fromCommand(const Command& command);
58 
59 private:
60  Ui::EditCommandDialog* ui;
61  Qt::Key m_key;
62  Qt::KeyboardModifiers m_keyModifiers;
64 
65  void setKeyLabel();
66  void setKeyAssociate();
67 
68 private slots:
69  void on_showFileDialog_clicked(bool checked);
70  void on_keyCapture_toggled(bool checked);
71  void commandKeyPressed(Qt::Key key, Qt::KeyboardModifiers keyModifiers, bool release);
72 };
73 
74 
75 
76 #endif /* SDRGUI_GUI_EDITCOMMANDDIALOG_H_ */
CommandKeyReceiver * m_commandKeyReceiver
#define SDRGUI_API
Definition: export.h:52
Qt::KeyboardModifiers m_keyModifiers
Ui::EditCommandDialog * ui