]> git.tdb.fi Git - xinema.git/blobdiff - remote/source/streamcontrolitem.h
Add channel selection controls in the remote
[xinema.git] / remote / source / streamcontrolitem.h
index cb08836c69ca0a21327832057069202b5405020d..8bb2ccee397a19f0ed4ec16755cf66d7d9a8d8a8 100644 (file)
@@ -15,6 +15,10 @@ class StreamControlItem: public QQuickItem
        Q_PROPERTY(QString title READ get_title NOTIFY title_changed)
        Q_PROPERTY(float duration READ get_duration NOTIFY duration_changed)
        Q_PROPERTY(float position READ get_position WRITE set_position NOTIFY position_changed)
+       Q_PROPERTY(QStringList audioChannels READ get_audio_channels NOTIFY channels_changed)
+       Q_PROPERTY(QStringList spuChannels READ get_spu_channels NOTIFY channels_changed)
+       Q_PROPERTY(int currentAudioChannel READ get_current_audio_channel WRITE select_audio_channel NOTIFY current_audio_channel_changed)
+       Q_PROPERTY(int currentSpuChannel READ get_current_spu_channel WRITE select_spu_channel NOTIFY current_spu_channel_changed)
 
        Q_ENUMS(PlaybackState)
 
@@ -41,6 +45,12 @@ public:
        float get_duration() const;
        void set_position(float);
        float get_position() const;
+       QStringList get_audio_channels() const;
+       QStringList get_spu_channels() const;
+       void select_audio_channel(int);
+       void select_spu_channel(int);
+       int get_current_audio_channel() const;
+       int get_current_spu_channel() const;
 
 signals:
        void control_changed();
@@ -48,6 +58,12 @@ signals:
        void title_changed();
        void duration_changed();
        void position_changed();
+       void channels_changed();
+       void current_audio_channel_changed();
+       void current_spu_channel_changed();
+
+private slots:
+       void control_channels_changed();
 };
 
 #endif