Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
CDirectoryProvider Class Reference

#include <DirectoryProvider.h>

Inheritance diagram for CDirectoryProvider:
IListProvider IJobCallback ANNOUNCEMENT::IAnnouncer

Public Types

enum  UpdateState { OK , INVALIDATED , DONE }
 

Public Member Functions

 CDirectoryProvider (const TiXmlElement *element, int parentID)
 
 ~CDirectoryProvider () override
 
bool Update (bool forceRefresh) override
 Update the list content. More...
 
void Announce (ANNOUNCEMENT::AnnouncementFlag flag, const char *sender, const char *message, const CVariant &data) override
 
void Fetch (std::vector< CGUIListItemPtr > &items) override
 Fetch the current list of items. More...
 
void Reset () override
 Reset the current list of items. Derived classes may choose to ignore this. More...
 
bool OnClick (const CGUIListItemPtr &item) override
 Click event on an item. More...
 
bool OnInfo (const CGUIListItemPtr &item) override
 Open the info dialog for an item provided by this IListProvider. More...
 
bool OnContextMenu (const CGUIListItemPtr &item) override
 Open the context menu for an item provided by this IListProvider. More...
 
bool IsUpdating () const override
 Check whether the list provider is updating content. More...
 
void OnJobComplete (unsigned int jobID, bool success, CJob *job) override
 The callback used when a job completes. More...
 
- Public Member Functions inherited from IListProvider
 IListProvider (int parentID)
 
virtual ~IListProvider ()=default
 
virtual void SetDefaultItem (int item, bool always)
 Set the default item to focus. For backwards compatibility. More...
 
virtual int GetDefaultItem () const
 The default item to focus. More...
 
virtual bool AlwaysFocusDefaultItem () const
 Whether to always focus the default item. More...
 
- Public Member Functions inherited from IJobCallback
virtual ~IJobCallback ()=default
 Destructor for job call back objects. More...
 
virtual void OnJobProgress (unsigned int jobID, unsigned int progress, unsigned int total, const CJob *job)
 An optional callback function that a job may call while processing. More...
 
- Public Member Functions inherited from ANNOUNCEMENT::IAnnouncer
 IAnnouncer ()=default
 
virtual ~IAnnouncer ()=default
 

Additional Inherited Members

- Static Public Member Functions inherited from IListProvider
static IListProviderCreate (const TiXmlNode *parent, int parentID)
 Factory to create list providers. More...
 
static IListProviderCreateSingle (const TiXmlNode *content, int parentID)
 Factory to create list providers. Cannot create a multi-provider. More...
 
- Protected Attributes inherited from IListProvider
int m_parentID
 

Member Enumeration Documentation

◆ UpdateState

Enumerator
OK 
INVALIDATED 
DONE 

Constructor & Destructor Documentation

◆ CDirectoryProvider()

CDirectoryProvider::CDirectoryProvider ( const TiXmlElement *  element,
int  parentID 
)

◆ ~CDirectoryProvider()

CDirectoryProvider::~CDirectoryProvider ( )
override

Member Function Documentation

◆ Announce()

void CDirectoryProvider::Announce ( ANNOUNCEMENT::AnnouncementFlag  flag,
const char *  sender,
const char *  message,
const CVariant data 
)
overridevirtual

◆ Fetch()

void CDirectoryProvider::Fetch ( std::vector< CGUIListItemPtr > &  items)
overridevirtual

Fetch the current list of items.

Parameters
items[out] the list to be filled.

Implements IListProvider.

◆ IsUpdating()

bool CDirectoryProvider::IsUpdating ( ) const
overridevirtual

Check whether the list provider is updating content.

Returns
true if in the processing of updating, false otherwise.

Reimplemented from IListProvider.

◆ OnClick()

bool CDirectoryProvider::OnClick ( const CGUIListItemPtr item)
overridevirtual

Click event on an item.

Parameters
itemthe item that was clicked.
Returns
true if the click was handled, false otherwise.

Implements IListProvider.

◆ OnContextMenu()

bool CDirectoryProvider::OnContextMenu ( const CGUIListItemPtr item)
overridevirtual

Open the context menu for an item provided by this IListProvider.

Parameters
itemthe item that was clicked.
Returns
true if the click was handled, false otherwise.

Implements IListProvider.

◆ OnInfo()

bool CDirectoryProvider::OnInfo ( const CGUIListItemPtr item)
overridevirtual

Open the info dialog for an item provided by this IListProvider.

Parameters
itemthe item that was clicked.
Returns
true if the dialog was shown, false otherwise.

Implements IListProvider.

◆ OnJobComplete()

void CDirectoryProvider::OnJobComplete ( unsigned int  jobID,
bool  success,
CJob job 
)
overridevirtual

The callback used when a job completes.

OnJobComplete is called at the completion of the job's DoWork() function, and is used to return information to the caller on the result of the job. On returning form this function the CJobManager will destroy this job.

Parameters
jobIDthe unique id of the job (as retrieved from CJobManager::AddJob)
successthe result from the DoWork call
jobthe job that has been processed. The job will be destroyed after this function returns
See also
CJobManager and CJob

Implements IJobCallback.

◆ Reset()

void CDirectoryProvider::Reset ( void  )
overridevirtual

Reset the current list of items. Derived classes may choose to ignore this.

Reimplemented from IListProvider.

◆ Update()

bool CDirectoryProvider::Update ( bool  forceRefresh)
overridevirtual

Update the list content.

Returns
true if the content has changed, false otherwise.
Todo:
Also returned changed if properties are changed (if so, need to update scroll to letter).

Implements IListProvider.


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