Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
|
A listprovider that handles multiple individual providers. More...
#include <MultiProvider.h>
Public Member Functions | |
CMultiProvider (const TiXmlNode *first, int parentID) | |
CMultiProvider (const CMultiProvider &other) | |
std::unique_ptr< IListProvider > | Clone () override |
Create an instance of the derived class. Allows for polymorphic copies. | |
bool | Update (bool forceRefresh) override |
Update the list content. | |
void | Fetch (std::vector< std::shared_ptr< CGUIListItem > > &items) override |
Fetch the current list of items. | |
bool | IsUpdating () const override |
Check whether the list provider is updating content. | |
void | Reset () override |
Reset the current list of items. Derived classes may choose to ignore this. | |
bool | OnClick (const std::shared_ptr< CGUIListItem > &item) override |
Click event on an item. | |
bool | OnInfo (const std::shared_ptr< CGUIListItem > &item) override |
Open the info dialog for an item provided by this IListProvider. | |
bool | OnContextMenu (const std::shared_ptr< CGUIListItem > &item) override |
Open the context menu for an item provided by this IListProvider. | |
Public Member Functions inherited from IListProvider | |
IListProvider (int parentID) | |
IListProvider (const IListProvider &other)=default | |
virtual | ~IListProvider ()=default |
virtual void | FreeResources (bool immediately) |
Free all GUI resources allocated by the items. | |
virtual bool | OnPlay (const std::shared_ptr< CGUIListItem > &item) |
Play event on an item. | |
virtual void | SetDefaultItem (int item, bool always) |
Set the default item to focus. For backwards compatibility. | |
virtual int | GetDefaultItem () const |
The default item to focus. | |
virtual bool | AlwaysFocusDefaultItem () const |
Whether to always focus the default item. | |
Protected Types | |
typedef size_t | item_key_type |
Static Protected Member Functions | |
static item_key_type | GetItemKey (std::shared_ptr< CGUIListItem > const &item) |
Protected Attributes | |
std::vector< IListProviderPtr > | m_providers |
std::map< item_key_type, IListProvider * > | m_itemMap |
CCriticalSection | m_section |
Protected Attributes inherited from IListProvider | |
int | m_parentID |
Additional Inherited Members | |
Static Public Member Functions inherited from IListProvider | |
static std::unique_ptr< IListProvider > | Create (const TiXmlNode *parent, int parentID) |
Factory to create list providers. | |
static std::unique_ptr< IListProvider > | CreateSingle (const TiXmlNode *content, int parentID) |
Factory to create list providers. Cannot create a multi-provider. | |
A listprovider that handles multiple individual providers.
|
protected |
CMultiProvider::CMultiProvider | ( | const TiXmlNode * | first, |
int | parentID ) |
|
explicit |
|
overridevirtual |
Create an instance of the derived class. Allows for polymorphic copies.
Implements IListProvider.
|
overridevirtual |
Fetch the current list of items.
items | [out] the list to be filled. |
Implements IListProvider.
|
staticprotected |
|
overridevirtual |
Check whether the list provider is updating content.
Reimplemented from IListProvider.
|
overridevirtual |
Click event on an item.
item | the item that was clicked. |
Implements IListProvider.
|
overridevirtual |
Open the context menu for an item provided by this IListProvider.
item | the item that was clicked. |
Implements IListProvider.
|
overridevirtual |
Open the info dialog for an item provided by this IListProvider.
item | the item that was clicked. |
Implements IListProvider.
|
overridevirtual |
Reset the current list of items. Derived classes may choose to ignore this.
Reimplemented from IListProvider.
Update the list content.
Implements IListProvider.
|
protected |
|
protected |
|
protected |