Sayonara Player
PlaylistTabMenu.h
1 
2 /* Copyright (C) 2011-2016 Lucio Carreras
3  *
4  * This file is part of sayonara player
5  *
6  * This program is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10 
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15 
16  * You should have received a copy of the GNU General Public License
17  * along with this program. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 
21 
22 #ifndef PLAYLISTTABMENU_H
23 #define PLAYLISTTABMENU_H
24 
25 #include "Helper/Settings/SayonaraClass.h"
26 #include "PlaylistMenuEntry.h"
27 
28 #include <QMenu>
29 #include <QAction>
30 
31 class IconLoader;
32 
34  public QMenu,
35  private SayonaraClass
36 {
37 
38  Q_OBJECT
39 
40 signals:
41  void sig_delete_clicked();
42  void sig_save_clicked();
43  void sig_save_as_clicked();
44  void sig_close_clicked();
45  void sig_close_others_clicked();
46  void sig_reset_clicked();
47  void sig_rename_clicked();
48  void sig_clear_clicked();
49 
50 private:
51  QAction* _action_delete=nullptr;
52  QAction* _action_save=nullptr;
53  QAction* _action_save_as=nullptr;
54  QAction* _action_reset=nullptr;
55  QAction* _action_close=nullptr;
56  QAction* _action_close_others=nullptr;
57  QAction* _action_rename=nullptr;
58  QAction* _action_clear=nullptr;
59 
60  IconLoader* _icon_loader;
61 
62 private slots:
63  void language_changed();
64  void skin_changed();
65 
66 
67 public:
68  PlaylistTabMenu(QWidget* parent=nullptr);
69 
70  ~PlaylistTabMenu();
71 
72  void show_menu_items(PlaylistMenuEntries entries);
73  void show_close(bool b);
74 };
75 
76 
77 
78 #endif // PLAYLISTTABMENU_H
The SayonaraClass class provides access to Settings and notifications.
Definition: SayonaraClass.h:31
Definition: IconLoader.h:35
Definition: PlaylistTabMenu.h:33