CuteLogger
Fast and simple logging solution for Qt based applications
actionsdialog.h
1 /*
2  * Copyright (c) 2022-2024 Meltytech, LLC
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, either 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 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/>.
16  */
17 
18 #ifndef ACTIONSDIALOG_H
19 #define ACTIONSDIALOG_H
20 
21 #include "models/actionsmodel.h"
22 
23 #include <QDialog>
24 
25 class PrivateTreeView;
26 class QLineEdit;
27 class QSortFilterProxyModel;
28 class StatusLabelWidget;
29 class QKeySequenceEdit;
30 
31 class ActionsDialog : public QDialog
32 {
33  Q_OBJECT
34 public:
35  explicit ActionsDialog(QWidget *parent = 0);
36  void saveCurrentEditor();
37 
38 public slots:
39  void focusSearchResults();
40 
41 protected:
42  void hideEvent(QHideEvent *event);
43  void showEvent(QShowEvent *event);
44 
45 private:
46  QLineEdit *m_searchField;
47  ActionsModel m_model;
48  PrivateTreeView *m_table;
49  QSortFilterProxyModel *m_proxyModel;
50  StatusLabelWidget *m_status;
51 };
52 
53 #endif // ACTIONSDIALOG_H