Sayonara Player
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Gui
Player
GUI_PlayerMenubar.h
1
/* GUI_PlayerMenubar.h */
2
3
/* Copyright (C) 2011-2024 Michael Lugmair (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
#ifndef GUI_PLAYERMENUBAR_H
22
#define GUI_PLAYERMENUBAR_H
23
24
#include "Gui/Utils/Shortcuts/ShortcutIdentifier.h"
25
#include "Gui/Utils/Widgets/WidgetTemplate.h"
26
#include "Utils/Pimpl.h"
27
28
#include <QMenuBar>
29
30
namespace
Library
31
{
32
class
LibraryContainer
;
33
class
PluginHandler
;
34
}
35
36
namespace
PlayerPlugin
37
{
38
class
Base
;
39
}
40
41
namespace
Playlist
42
{
43
class
Creator
;
44
}
45
46
class
Shutdown
;
47
class
Menubar :
48
public
Gui::WidgetTemplate
<QMenuBar>
49
{
50
Q_OBJECT
51
PIMPL(Menubar)
52
53
signals:
54
void
sigCloseClicked();
55
void
sigMinimizeClicked();
56
void
sigLoggerClicked();
57
58
public
:
59
Menubar(
Shutdown
* shutdown,
Playlist::Creator
* playlistCreator,
60
Library::PluginHandler
* pluginHandler, QWidget* parent =
nullptr
);
61
~Menubar()
override
;
62
63
void
insertPreferenceAction(QAction* action);
64
65
void
showLibraryAction(
bool
visible);
66
void
setShowLibraryActionEnabled(
bool
b);
67
void
showLibraryMenu(
bool
b);
68
69
private
:
70
void
initDonateLink();
71
void
initConnections();
72
void
styleChanged();
73
void
initLanguages();
74
void
initSkin();
75
76
QAction* changeCurrentLibrary(
Library::LibraryContainer
* library);
77
78
private
slots:
// NOLINT(readability-redundant-access-specifiers)
79
void
openDirClicked();
80
void
openFilesClicked();
81
void
shutdownClicked();
82
void
closeClicked();
83
void
minimizeClicked();
84
void
skinToggled(
bool
b);
85
void
bigCoverToggled(
bool
b);
86
void
showLibraryToggled(
bool
b);
87
void
showFullscreenToggled(
bool
b);
88
void
helpClicked();
89
void
aboutClicked();
90
void
shortcutChanged(ShortcutIdentifier identifier);
91
void
pluginAdded(
PlayerPlugin::Base
* plugin);
92
93
protected
:
94
void
languageChanged()
override
;
95
void
skinChanged()
override
;
96
};
97
98
#endif
// GUI_PLAYERMENUBAR_H
Gui::WidgetTemplate
Template for Sayonara Widgets. This template is responsible for holding a reference to the settings.
Definition
WidgetTemplate.h:86
Library::LibraryContainer
Definition
LibraryContainer.h:35
Library::PluginHandler
Definition
LibraryPluginHandler.h:40
PlayerPlugin::Base
Definition
PlayerPluginBase.h:40
Playlist::Creator
Definition
PlaylistInterface.h:59
Shutdown
Definition
Shutdown.h:33
PlayerPlugin
Interface for PlayerPlugin classes. get_name() and language_changed() must be overwritten.
Definition
GUI_Player.h:47
Generated on
for Sayonara Player by
1.17.0