1
/* This file is part of the KDE project
2
Copyright (C) 2007-2008 Matthias Kretz <kretz@kde.org>
4
This library is free software; you can redistribute it and/or
5
modify it under the terms of the GNU Lesser General Public
6
License as published by the Free Software Foundation; either
7
version 2.1 of the License, or (at your option) version 3, or any
8
later version accepted by the membership of KDE e.V. (or its
9
successor approved by the membership of KDE e.V.), Nokia Corporation
10
(or its successors, if any) and the KDE Free Qt Foundation, which shall
11
act as a proxy defined in Section 6 of version 3 of the license.
13
This library is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
Lesser General Public License for more details.
18
You should have received a copy of the GNU Lesser General Public
19
License along with this library. If not, see <http://www.gnu.org/licenses/>.
23
#ifndef PHONON_ADDONINTERFACE_H
24
#define PHONON_ADDONINTERFACE_H
26
#include "phononnamespace.h"
28
#include <QtCore/QList>
29
#include <QtCore/QVariant>
34
#ifndef QT_NO_PHONON_MEDIACONTROLLER
38
/** \class AddonInterface addoninterface.h phonon/AddonInterface
39
* \short Interface for Menu, Chapter, Angle and Title/Track control.
41
* \author Matthias Kretz <kretz@kde.org>
46
virtual ~AddonInterface() {}
49
NavigationInterface = 1,
53
SubtitleInterface = 5,
54
AudioChannelInterface = 6
57
enum NavigationCommand {
77
enum SubtitleCommand {
82
enum AudioChannelCommand {
83
availableAudioChannels,
85
setCurrentAudioChannel
88
virtual bool hasInterface(Interface iface) const = 0;
90
virtual QVariant interfaceCall(Interface iface, int command,
91
const QList<QVariant> &arguments = QList<QVariant>()) = 0;
96
Q_DECLARE_INTERFACE(Phonon::AddonInterface, "AddonInterface0.2.phonon.kde.org")
98
#endif //QT_NO_PHONON_MEDIACONTROLLER
103
#endif // PHONON_ADDONINTERFACE_H