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 Jellyfin::ViewModel::AlbumArtistLoader Jellyfin::ViewModel::LatestMediaLoader Jellyfin::ViewModel::LiveTvChannelsLoader Jellyfin::ViewModel::NextUpLoader Jellyfin::ViewModel::ResumeItemsLoader Jellyfin::ViewModel::ShowEpisodesLoader Jellyfin::ViewModel::ShowSeasonsLoader Jellyfin::ViewModel::UserItemsLoader Jellyfin::ViewModel::UserViewsLoader

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

virtual 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 >
virtual 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: