No, public members are not required...

This commit is contained in:
craig.p.drummond
2014-04-12 16:08:57 +00:00
committed by craig.p.drummond
parent 7a7a722262
commit dbd8dffc4e
2 changed files with 19 additions and 20 deletions

View File

@@ -83,6 +83,11 @@ public:
Q_INVOKABLE bool getAlbumsFound() { return AlbumsModel::self()->rowCount()>0; }
Q_INVOKABLE bool getPlaylistsFound() { return PlaylistsModel::self()->rowCount()>0; }
PlayQueueProxyModel * getPlayQueueProxyModel() { return &playQueueProxyModel; }
MusicLibraryProxyModel * getArtistsProxyModel() { return &artistsProxyModel; }
AlbumsProxyModel * getAlbumsProxyModel() { return &albumsProxyModel; }
PlaylistsProxyModel * getPlaylistsProxyModel() { return &playlistsProxyModel; }
Q_SIGNALS:
void onConnectedChanged();
void onPlayingStatusChanged();
@@ -102,17 +107,6 @@ public Q_SLOTS:
void mpdConnectionStateChanged(bool connected);
void albumsUpdated();
private:
MPDState lastState;
qint32 lastSongId;
enum { CS_Init, CS_Connected, CS_Disconnected } connectedState;
bool stopAfterCurrent;
Song current;
QString mainText;
QString subText;
QTimer *statusTimer;
Q_SIGNALS:
// These are for communicating with MPD object (which is in its own thread, so need to talk via signal/slots)
void setDetails(const MPDConnectionDetails &det);
@@ -133,7 +127,16 @@ Q_SIGNALS:
private:
void updateStatus(MPDStatus * const status);
public:
private:
MPDState lastState;
qint32 lastSongId;
enum { CS_Init, CS_Connected, CS_Disconnected } connectedState;
bool stopAfterCurrent;
Song current;
QString mainText;
QString subText;
QTimer *statusTimer;
PlayQueueModel playQueueModel;
PlayQueueProxyModel playQueueProxyModel;
MusicLibraryProxyModel artistsProxyModel;

View File

@@ -195,15 +195,11 @@ int main(int argc, char *argv[])
qmlRegisterType<MPDBackend>("MPDBackend", 1, 0, "MPDBackend");
QQuickView view;
view.setMinimumSize(QSize(360, 540));
view.rootContext()->setContextProperty("artistsModel", MusicLibraryModel::self());
view.rootContext()->setContextProperty("albumsModel", AlbumsModel::self());
view.rootContext()->setContextProperty("playlistsModel", PlaylistsModel::self());
view.rootContext()->setContextProperty("backend", &backend);
view.rootContext()->setContextProperty("artistsProxyModel", &backend.artistsProxyModel);
view.rootContext()->setContextProperty("albumsProxyModel", &backend.albumsProxyModel);
view.rootContext()->setContextProperty("playlistsProxyModel", &backend.playlistsProxyModel);
view.rootContext()->setContextProperty("playQueueModel", &backend.playQueueModel);
view.rootContext()->setContextProperty("playQueueProxyModel", &backend.playQueueProxyModel);
view.rootContext()->setContextProperty("artistsProxyModel", backend.getArtistsProxyModel());
view.rootContext()->setContextProperty("albumsProxyModel", backend.getAlbumsProxyModel());
view.rootContext()->setContextProperty("playlistsProxyModel", backend.getPlaylistsProxyModel());
view.rootContext()->setContextProperty("playQueueProxyModel", backend.getPlayQueueProxyModel());
view.rootContext()->setContextProperty("currentCover", CurrentCover::self());
view.rootContext()->setContextProperty("appDir", Utils::dataDir(QString(), true));
view.setResizeMode(QQuickView::SizeRootObjectToView);