@@ -0,0 +1,72 @@
1+/*
2+ * Copyright (C) 2013 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ *
16+ * Author: Michael Zanetti <michael.zanetti@canonical.com>
17+ */
18+
19+#include "audio.h"
20+
21+Audio::Audio(QObject* parent):
22+ QObject(parent),
23+ m_playbackState(StoppedState)
24+{
25+}
26+
27+QUrl Audio::source() const
28+{
29+ return m_source;
30+}
31+
32+void Audio::setSource(const QUrl &source)
33+{
34+ if (m_source != source) {
35+ m_source = source;
36+ Q_EMIT sourceChanged(source);
37+ }
38+}
39+
40+Audio::PlaybackState Audio::playbackState() const
41+{
42+ return m_playbackState;
43+}
44+
45+QString Audio::errorString() const
46+{
47+ return QString();
48+}
49+
50+void Audio::pause()
51+{
52+ if (m_playbackState == PlayingState) {
53+ m_playbackState = PausedState;
54+ Q_EMIT playbackStateChanged();
55+ }
56+}
57+
58+void Audio::play()
59+{
60+ if (m_playbackState != PlayingState && m_source.isValid()) {
61+ m_playbackState = PlayingState;
62+ Q_EMIT playbackStateChanged();
63+ }
64+}
65+
66+void Audio::stop()
67+{
68+ if (m_playbackState != StoppedState) {
69+ m_playbackState = StoppedState;
70+ Q_EMIT playbackStateChanged();
71+ }
72+}