Sayonara Player
Loading...
Searching...
No Matches
PlaylistTabMenu.h
1
2/* Copyright (C) 2011-2024 Michael Lugmair (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#ifndef PLAYLISTTABMENU_H
21#define PLAYLISTTABMENU_H
22
23#include "Gui/Utils/Widgets/WidgetTemplate.h"
24#include "PlaylistMenuEntry.h"
25#include "Utils/Pimpl.h"
26
27#include <QMenu>
28
29namespace Gui
30{
31 class PreferenceAction;
32}
33
34namespace Playlist
35{
40 class TabMenu :
41 public Gui::WidgetTemplate<QMenu>
42 {
43 Q_OBJECT
44 PIMPL(TabMenu)
45
46 signals:
47 void sigDeleteClicked();
48 void sigSaveClicked();
49 void sigSaveAsClicked();
50 void sigCloseClicked();
51 void sigCloseOthersClicked();
52 void sigResetClicked();
53 void sigRenameClicked();
54 void sigClearClicked();
55 void sigOpenFileClicked();
56 void sigOpenDirClicked();
57 void sigSaveToFileClicked();
58 void sigLockTriggered(bool b);
59
60 public:
61 explicit TabMenu(QWidget* parent = nullptr);
62 ~TabMenu() override;
63
64 void showMenuItems(MenuEntries entries);
65 void showClose(bool b);
66
67 void addPreferenceAction(Gui::PreferenceAction* action);
68
69 protected:
70 void languageChanged() override;
71 void skinChanged() override;
72 };
73}
74
75#endif // PLAYLISTTABMENU_H
A PreferenceAction can be added to each widget supporting QActions. When triggering this action,...
Definition: PreferenceAction.h:40
Template for Sayonara Widgets. This template is responsible for holding a reference to the settings.
Definition: WidgetTemplate.h:86
The PlaylistTabMenu class.
Definition: PlaylistTabMenu.h:42