/* * This file was generated by qdbusxml2cpp version 0.8 * Command line was: qdbusxml2cpp org.mpris.MediaPlayer2.Player.xml -a ../include/JellyfinQt/platform/freedesktop/mediaplayer2player.h:../src/platform/freedesktop/mediaplayer2player.cpp * * qdbusxml2cpp is Copyright (C) 2020 The Qt Company Ltd. * * This is an auto-generated file. * This file may have been hand-edited. Look for HAND-EDIT comments * before re-generating it. */ //HAND-EDIT: include-guard #ifndef JELLYFIN_PLATFORM_FREEDESKTOP_MEDIAPLAYER2PLAYER_H #define JELLYFIN_PLATFORM_FREEDESKTOP_MEDIAPLAYER2PLAYER_H #include #include #include #include "JellyfinQt/model/player.h" QT_BEGIN_NAMESPACE class QByteArray; template class QList; template class QMap; class QString; class QStringList; class QVariant; QT_END_NAMESPACE //HAND-EDIT: added namespaces namespace Jellyfin { namespace ViewModel { class Item; class PlatformMediaControl; class PlaybackManager; } namespace Platform { namespace FreeDesktop { /* * Adaptor class for interface org.mpris.MediaPlayer2.Player */ class PlayerAdaptor: public QDBusAbstractAdaptor { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.mpris.MediaPlayer2.Player") Q_CLASSINFO("D-Bus Introspection", "" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" "") public: PlayerAdaptor(ViewModel::PlatformMediaControl *parent); virtual ~PlayerAdaptor(); public: // PROPERTIES Q_PROPERTY(bool CanControl READ canControl) bool canControl() const; Q_PROPERTY(bool CanGoNext READ canGoNext) bool canGoNext() const; Q_PROPERTY(bool CanGoPrevious READ canGoPrevious) bool canGoPrevious() const; Q_PROPERTY(bool CanPause READ canPause) bool canPause() const; Q_PROPERTY(bool CanPlay READ canPlay) bool canPlay() const; Q_PROPERTY(bool CanSeek READ canSeek) bool canSeek() const; Q_PROPERTY(QString LoopStatus READ loopStatus WRITE setLoopStatus) QString loopStatus() const; void setLoopStatus(const QString &value); Q_PROPERTY(double MaximumRate READ maximumRate) double maximumRate() const; Q_PROPERTY(QVariantMap Metadata READ metadata) QVariantMap metadata() const; Q_PROPERTY(double MinimumRate READ minimumRate) double minimumRate() const; Q_PROPERTY(QString PlaybackStatus READ playbackStatus) QString playbackStatus() const; Q_PROPERTY(qlonglong Position READ position) qlonglong position() const; Q_PROPERTY(double Rate READ rate WRITE setRate) double rate() const; void setRate(double value); Q_PROPERTY(bool Shuffle READ shuffle WRITE setShuffle) bool shuffle() const; void setShuffle(bool value); Q_PROPERTY(double Volume READ volume WRITE setVolume) double volume() const; void setVolume(double value); public Q_SLOTS: // METHODS void Next(); void OpenUri(const QString &Uri); void Pause(); void Play(); void PlayPause(); void Previous(); void Seek(qlonglong Offset); void SetPosition(const QDBusObjectPath &TrackId, qlonglong Position); void Stop(); Q_SIGNALS: // SIGNALS void Seeked(qlonglong Position); private: ViewModel::PlatformMediaControl *m_mediaControl; void notifyPropertiesChanged(QStringList properties); private slots: void onCurrentItemChanged(); void onPlaybackStateChanged(Jellyfin::Model::PlayerStateClass::Value state); void onMediaStatusChanged(Jellyfin::Model::MediaStatusClass::Value status); void onPositionChanged(qint64 position); void onSeekableChanged(bool seekable); void onPlaybackManagerChanged(ViewModel::PlaybackManager *newPlaybackManager); void onSeeked(qint64 newPosition); }; } // NS FreeDesktop } // NS Platform } // NS Jellyfin #endif