]> git.tdb.fi Git - xinema.git/blobdiff - remote/source/xinemacontrol.h
Implement seeking and play/pause controls in the remote
[xinema.git] / remote / source / xinemacontrol.h
index dc7ad8fcd20cbdce0d439013bbe5f359e6da3aa2..5693554836b88f7e0639810ea57f08f272affe7d 100644 (file)
@@ -8,9 +8,18 @@ class XinemaControl: public QObject
 {
        Q_OBJECT
 
+public:
+       enum PlaybackState
+       {
+               STOPPED,
+               PAUSED,
+               PLAYING
+       };
+
 private:
        QTcpSocket socket;
        QByteArray buffer;
+       PlaybackState playback_state;
        QString title;
        float duration;
        float position;
@@ -24,16 +33,23 @@ public:
        void list_directory(const QString &);
        void play_file(const QString &);
 
+       PlaybackState get_playback_state() const { return playback_state; }
        const QString &get_title() const { return title; }
        float get_duration() const { return duration; }
        float get_position() const { return position; }
 
+       void play();
+       void seek(float);
+       void pause();
+       void stop();
+
 signals:
        void connected();
        void disconnected();
        void directory_started(const QString &);
        void file_added(const QString &);
        void subdirectory_added(const QString &);
+       void playback_state_changed(PlaybackState);
        void title_changed(const QString &);
        void duration_changed(float);
        void position_changed(float);