summaryrefslogtreecommitdiffstats
path: root/examples/mediaplayer/spmodel.h
diff options
context:
space:
mode:
authorNoam Rosenthal <nrosenth@nokia.com>2009-06-08 12:27:03 -0700
committerNoam Rosenthal <nrosenth@nokia.com>2009-06-08 12:27:03 -0700
commitd0441f605434a89b53735427e4e81182c65debbd (patch)
treeb96d25dc89cdb523c007a22bc0deed3a5aa5dd56 /examples/mediaplayer/spmodel.h
parenta6553f68f17c28adca049857686496a69b4c1e7a (diff)
scxml for 4.6
Diffstat (limited to 'examples/mediaplayer/spmodel.h')
-rw-r--r--examples/mediaplayer/spmodel.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/examples/mediaplayer/spmodel.h b/examples/mediaplayer/spmodel.h
new file mode 100644
index 0000000..af8254b
--- /dev/null
+++ b/examples/mediaplayer/spmodel.h
@@ -0,0 +1,64 @@
+#ifndef SPMODEL_H
+#define SPMODEL_H
+#include <QObject>
+#include <QUrl>
+#include <QAbstractItemModel>
+#include "songdata.h"
+
+class SPModel : public QObject
+{
+ Q_OBJECT
+
+ Q_PROPERTY(QUrl currentSong READ currentSong)
+ Q_PROPERTY(QString currentSongTitle READ currentSongTitle)
+ Q_PROPERTY(QString currentSongArtist READ currentSongArtist)
+ Q_PROPERTY(QString currentSongAlbum READ currentSongAlbum)
+ Q_PROPERTY(int albumCount READ albumCount)
+
+
+ public slots:
+ void clearAlbumFilter ();
+ void clearSongFilter ();
+ void loadArtists ();
+ void filterAlbumsByArtist(const QString & name);
+ void loadGenres ();
+ void filterSongsByGenre(const QString & genre);
+ void loadPlaylists();
+ void loadAlbums();
+ void filterSongsByPlaylist(const QString & uid);
+ void filterSongsByAlbum(const QString & name);
+ void loadSongs ();
+ void selectSong (const QString &);
+ void gotoNext();
+ void gotoPrev();
+ void addSong (const SongData &);
+ void reset ();
+
+ signals:
+ void albumChanged(const QString &);
+ void artistChanged(const QString &);
+ void genreChanged(const QString &);
+ void songListChanged();
+ void songChanged ();
+ void endOfList ();
+
+ public:
+ SPModel(QObject*);
+ virtual ~SPModel ();
+
+ QUrl currentSong();
+ QString currentSongTitle ();
+ QString currentSongArtist();
+ QString currentSongAlbum();
+ QAbstractItemModel* albumsItemModel() const;
+ QAbstractItemModel* genresItemModel() const;
+ QAbstractItemModel* songsItemModel() const;
+ QAbstractItemModel* playlistsItemModel() const;
+ QAbstractItemModel* artistsItemModel() const;
+ int albumCount() const;
+
+ private:
+ class SPModelPvt* pvt;
+};
+
+#endif