Jellyfin Qt
QML Library for interacting with the Jellyfin multimedia server
Loading...
Searching...
No Matches
Jellyfin::ViewModel::AbstractUserParameterLoader< T, D, R, P > Class Template Reference

Class intended for models which have a mandatory userId property, which can be extracted from the ApiClient. More...

#include <itemmodel.h>

Inheritance diagram for Jellyfin::ViewModel::AbstractUserParameterLoader< T, D, R, P >:
Jellyfin::LoaderModelLoader< T, D, R, P > Jellyfin::ModelLoader< T > Jellyfin::BaseModelLoader

Public Member Functions

 AbstractUserParameterLoader (Support::Loader< R, P > *loader, QObject *parent=nullptr)
Public Member Functions inherited from Jellyfin::LoaderModelLoader< T, D, R, P >
 LoaderModelLoader (Support::Loader< R, P > *loader, QObject *parent=nullptr)
Public Member Functions inherited from Jellyfin::ModelLoader< T >
 ModelLoader (QObject *parent=nullptr)
void reload () override
 Clears and reloads the model.
void loadMore ()
virtual bool canLoadMore () const
std::pair< QList< T * >, int > && result ()
 Holds the result. Moves it result to the caller and therefore can be only called once when the itemsLoaded is emitted.
Public Member Functions inherited from Jellyfin::BaseModelLoader
 BaseModelLoader (QObject *parent=nullptr)
ApiClientapiClient () const
void setApiClient (ApiClient *newApiClient)
int limit () const
void setLimit (int newLimit)
bool autoReload () const
void setAutoReload (bool newAutoReload)
ViewModel::ModelStatus status () const
virtual void classBegin () override
virtual void componentComplete () override
void autoReloadIfNeeded ()

Protected Member Functions

bool canReload () const override
 Determines if this model is able to reload.
Protected Member Functions inherited from Jellyfin::LoaderModelLoader< T, D, R, P >
void loadMore (ViewModel::ModelStatus suggestedModelStatus) override
 Loads data from the given offset with a maximum count of limit. The itemsLoaded() signal is emitted when new data is ready. Call getLoadedItems to retrieve the loaded items.
void loaderReady ()
void loaderError (QString error)
Protected Member Functions inherited from Jellyfin::BaseModelLoader
void emitModelShouldClear ()
void emitItemsLoaded ()
void setStatus (ViewModel::ModelStatus newStatus)

Additional Inherited Members

Signals inherited from Jellyfin::BaseModelLoader
void ready ()
void apiClientChanged (ApiClient *newApiClient)
void statusChanged ()
void limitChanged (int newLimit)
void autoReloadChanged (bool newAutoReload)
void modelShouldClear ()
 Emitted when the model should clear itself.
void itemsLoaded ()
void reloadWanted ()
Protected Attributes inherited from Jellyfin::LoaderModelLoader< T, D, R, P >
QScopedPointer< Support::Loader< R, P > > m_loader
m_parameters
Protected Attributes inherited from Jellyfin::ModelLoader< T >
std::pair< QList< T * >, int > m_result
Protected Attributes inherited from Jellyfin::BaseModelLoader
bool m_isBeingParsed = false
ApiClientm_apiClient = nullptr
bool m_autoReload = true
bool m_needsAuthentication = true
bool m_manualLimitSet = false
int m_limit = -1
int m_startIndex = 0
int m_totalRecordCount = 0
bool m_explicitLimitSet = false
const int DEFAULT_LIMIT = 100
ViewModel::ModelStatus m_status = ViewModel::ModelStatus::Uninitialised
Properties inherited from Jellyfin::BaseModelLoader
ApiClientapiClient
Jellyfin::ViewModel::ModelStatusClass::Value status
int limit
bool autoReload

Detailed Description

template<class T, class D, class R, class P>
class Jellyfin::ViewModel::AbstractUserParameterLoader< T, D, R, P >

Class intended for models which have a mandatory userId property, which can be extracted from the ApiClient.

Constructor & Destructor Documentation

◆ AbstractUserParameterLoader()

template<class T, class D, class R, class P>
Jellyfin::ViewModel::AbstractUserParameterLoader< T, D, R, P >::AbstractUserParameterLoader ( Support::Loader< R, P > * loader,
QObject * parent = nullptr )
inlineexplicit

Member Function Documentation

◆ canReload()

template<class T, class D, class R, class P>
bool Jellyfin::ViewModel::AbstractUserParameterLoader< T, D, R, P >::canReload ( ) const
inlineoverrideprotectedvirtual

Determines if this model is able to reload.

The default implementation checks if the user is authenticated, and the model is not reloading. If overriding this method, please call this method as well in determining if the model should be reloadable.

Returns
True if the model can reload, false otherwise.

Reimplemented from Jellyfin::BaseModelLoader.


The documentation for this class was generated from the following file: