24 #include "DBusAdaptor.h"
26 #include "Utils/MetaData/MetaData.h"
27 #include "Utils/Pimpl.h"
31 #include <QDBusObjectPath>
33 using QStrRef =
const QString&;
50 QObject* parent =
nullptr);
53 Q_PROPERTY(
bool CanQuit READ CanQuit CONSTANT)
56 Q_PROPERTY(
bool CanRaise READ CanRaise CONSTANT)
59 Q_PROPERTY(
bool HasTrackList READ HasTrackList)
62 Q_PROPERTY(QString Identity READ Identity CONSTANT)
65 Q_PROPERTY(QString DesktopEntry READ DesktopEntry CONSTANT)
66 QString DesktopEntry();
68 Q_PROPERTY(QStringList SupportedUriSchemes READ SupportedUriSchemes CONSTANT)
69 QStringList SupportedUriSchemes();
71 Q_PROPERTY(QStringList SupportedMimeTypes READ SupportedMimeTypes CONSTANT)
72 QStringList SupportedMimeTypes();
74 Q_PROPERTY(
bool CanSetFullscreen READ CanSetFullscreen)
75 bool CanSetFullscreen();
77 Q_PROPERTY(
bool Fullscreen READ Fullscreen WRITE SetFullscreen)
79 void SetFullscreen(
bool b);
88 Q_PROPERTY(QString PlaybackStatus READ PlaybackStatus)
89 QString PlaybackStatus();
91 Q_PROPERTY(QString LoopStatus READ LoopStatus WRITE SetLoopStatus)
93 void SetLoopStatus(QString status);
95 Q_PROPERTY(
double Rate READ Rate WRITE SetRate)
97 void SetRate(
double rate);
99 Q_PROPERTY(
int Rating READ Rating)
102 Q_PROPERTY(
bool Shuffle READ Shuffle WRITE SetShuffle)
104 void SetShuffle(
bool shuffle);
106 Q_PROPERTY(QVariantMap Metadata READ Metadata)
107 QVariantMap Metadata();
109 Q_PROPERTY(
double Volume READ Volume WRITE SetVolume)
111 void SetVolume(
double volume);
112 void IncreaseVolume();
113 void DecreaseVolume();
115 Q_PROPERTY(qlonglong Position READ Position)
116 qlonglong Position();
117 void SetPosition(
const QDBusObjectPath& trackId, qlonglong position);
119 Q_PROPERTY(
double MinimumRate READ MinimumRate)
120 double MinimumRate();
122 Q_PROPERTY(
double MaximumRate READ MaximumRate)
123 double MaximumRate();
125 Q_PROPERTY(
bool CanGoNext READ CanGoNext)
128 Q_PROPERTY(
bool CanGoPrevious READ CanGoPrevious)
129 bool CanGoPrevious();
131 Q_PROPERTY(
bool CanPlay READ CanPlay)
134 Q_PROPERTY(
bool CanPause READ CanPause)
137 Q_PROPERTY(
bool CanSeek READ CanSeek)
140 Q_PROPERTY(
bool CanControl READ CanControl)
149 void Seek(qlonglong offset);
150 void OpenUri(
const QString& uri);
153 void positionChanged(MilliSeconds pos_ms);
154 void volumeChanged(
int volume);
155 void trackIndexChanged(
int idx);
156 void trackChanged(
const MetaData& md);
157 void playstateChanged(PlayState state);
160 void Seeked(qlonglong position);
164 void trackMetadataChanged();
169 #endif // DBUS_MPRIS_H