21#ifndef GUI_CONTROLSBASE_H
22#define GUI_CONTROLSBASE_H
24#include "Interfaces/Engine/CoverDataReceiver.h"
26#include "Gui/InfoDialog/InfoDialogContainer.h"
27#include "Gui/Utils/Widgets/Widget.h"
28#include "Gui/Utils/Icons.h"
30#include "Utils/MetaData/RadioMode.h"
31#include "Utils/Pimpl.h"
61 [[nodiscard]]
virtual QLabel* labSayonara()
const = 0;
62 [[nodiscard]]
virtual QLabel* labTitle()
const = 0;
63 [[nodiscard]]
virtual QLabel* labVersion()
const = 0;
64 [[nodiscard]]
virtual QLabel* labAlbum()
const = 0;
65 [[nodiscard]]
virtual QLabel* labArtist()
const = 0;
66 [[nodiscard]]
virtual QLabel* labWrittenBy()
const = 0;
67 [[nodiscard]]
virtual QLabel* labBitrate()
const = 0;
68 [[nodiscard]]
virtual QLabel* labFilesize()
const = 0;
69 [[nodiscard]]
virtual QLabel* labCopyright()
const = 0;
70 [[nodiscard]]
virtual QLabel* labCurrentTime()
const = 0;
71 [[nodiscard]]
virtual QLabel* labMaxTime()
const = 0;
73 [[nodiscard]]
virtual QWidget* widgetDetails()
const = 0;
77 [[nodiscard]]
virtual QPushButton* btnMute()
const = 0;
78 [[nodiscard]]
virtual QPushButton* btnPlay()
const = 0;
79 [[nodiscard]]
virtual QPushButton* btnRecord()
const = 0;
80 [[nodiscard]]
virtual QPushButton* btnPrevious()
const = 0;
81 [[nodiscard]]
virtual QPushButton* btnNext()
const = 0;
82 [[nodiscard]]
virtual QPushButton* btnStop()
const = 0;
85 [[nodiscard]]
virtual bool isExternResizeAllowed()
const = 0;
94 void setCoverLocation(
const MetaData& md);
95 void setStandardCover();
98 void checkRecordButtonVisible();
100 void setupVolumeButton(
int percent);
101 void increaseVolume();
102 void decreaseVolume();
104 void refreshCurrentPosition(
int val);
105 void setTotalTimeLabel(MilliSeconds totalTimeMs);
107 void setupShortcuts();
108 void setupConnections();
111 void changeVolumeByDelta(
int val);
112 void setCoverData(
const QByteArray& coverData,
const QString& mimeType)
override;
115 void playstateChanged(PlayState state);
117 void recordChanged(
bool b);
119 void buffering(
int progress);
121 void currentPositionChanged(MilliSeconds posMs);
122 void progressMoved(
int val);
123 void progressHovered(
int val);
125 void volumeChanged(
int val);
126 void muteChanged(
bool muted);
128 void currentTrackChanged(
const MetaData& track);
129 void metadataChanged();
131 void refreshLabels(
const MetaData& md);
132 void refreshCurrentTrack();
135 void coverClickRejected();
137 void streamRecorderActiveChanged();
140 [[nodiscard]]
bool isActive()
const override;
143 QWidget* getParentWidget()
override;
145 void resizeEvent(QResizeEvent* e)
override;
146 void showEvent(QShowEvent* e)
override;
147 void contextMenuEvent(QContextMenuEvent* e)
override;
148 void skinChanged()
override;
Definition: CoverDataProvider.h:28
Definition: CoverDataReceiver.h:27
Definition: GUI_ControlsBase.h:52
MetaDataList infoDialogData() const override
get the metadata that should be used for the info dialog So for lists, the selected tracks are used h...
MD::Interpretation metadataInterpretation() const override
get the interpretation for the metadata. Maybe a list of metadata should be intrepeted as albums whil...
This class is used for the actual editing of a RatingLabel While the RatingLabel class is used in pai...
Definition: RatingLabel.h:97
Definition: SearchSlider.h:35
An interface used to abstract the usage of the info dialog. An implementing class has to return the i...
Definition: InfoDialogContainer.h:64
Global handler for current playback state (Singleton)
Definition: PlayManager.h:36
IconName
The IconName enum.
Definition: Icons.h:59