Jellyfin Qt
QML Library for interacting with the Jellyfin multimedia server
|
#include <loader.h>
Public Member Functions | |
Loader (Support::Loader< R, P > *loaderImpl, QObject *parent=nullptr) | |
Loader (ApiClient *apiClient, Support::Loader< R, P > *loaderImpl, QObject *parent=nullptr) | |
T * | dataViewModel () const |
QObject * | data () const override |
void | reload () override |
Overload this method to reimplement the fetching mechanism to populate the RemoteData with data from the server. | |
Public Member Functions inherited from Jellyfin::ViewModel::LoaderBase | |
LoaderBase (QObject *parent=nullptr) | |
LoaderBase (ApiClient *apiClient, QObject *parent=nullptr) | |
Status | status () const |
QString | errorString () const |
void | setApiClient (ApiClient *newApiClient) |
void | setExtraFields (const QStringList &extraFields) |
Protected Attributes | |
T * | m_dataViewModel |
P | m_parameters |
QScopedPointer< Support::Loader< R, P > > | m_loader = nullptr |
Subclasses should initialize this to a loader that actually loads stuff. | |
Protected Attributes inherited from Jellyfin::ViewModel::LoaderBase | |
ApiClient * | m_apiClient = nullptr |
Additional Inherited Members | |
Public Types inherited from Jellyfin::ViewModel::LoaderBase | |
enum | Status { Uninitialised , Loading , Ready , Error } |
Public Slots inherited from Jellyfin::ViewModel::LoaderBase | |
Signals inherited from Jellyfin::ViewModel::LoaderBase | |
void | statusChanged (Jellyfin::ViewModel::LoaderBase::Status newStatus) |
void | apiClientChanged (ApiClient *newApiClient) |
void | errorStringChanged (QString newErrorString) |
void | autoReloadChanged (bool newAutoReload) |
void | dataChanged () |
void | ready () |
Convenience signal for status == RemoteData.Ready. | |
Protected Member Functions inherited from Jellyfin::ViewModel::LoaderBase | |
virtual bool | canReload () const |
Subclasses should implement this to determine if they can load data from the server. | |
void | setStatus (Status newStatus) |
void | setError (QNetworkReply::NetworkError error) |
void | setErrorString (const QString &newErrorString) |
void | reloadIfNeeded () |
void | classBegin () override |
void | componentComplete () override |
bool | isQmlParsing () const |
void | emitDataChanged () |
Properties inherited from Jellyfin::ViewModel::LoaderBase | |
ApiClient * | apiClient |
Jellyfin::ViewModel::LoaderBase::Status | status |
QString | errorString |
bool | autoReload |
QObject * | data |
Class representing data from a remote source, meant to be instantiated from QML.
Subclasses should do the following:
|
inline |
|
inline |
|
inlineoverridevirtual |
Reimplemented from Jellyfin::ViewModel::LoaderBase.
|
inline |
|
inlineoverridevirtual |
Overload this method to reimplement the fetching mechanism to populate the RemoteData with data from the server.
The default implementation makes a GET request to getDataUrl() and parses the resulting JSON, which should be enough for most cases. Consider overriding getDataUrl() and canRelaod() if possible. Manual overrides need to make sure that they're calling setStatus(Status), setError(QNetworkReply::NetworkError) and setErrorString() to let the QML side know what this thing is up to.
Reimplemented from Jellyfin::ViewModel::LoaderBase.
|
protected |
|
protected |
Subclasses should initialize this to a loader that actually loads stuff.
|
protected |