#include <playlist.h>

Public Types | |
| enum | { filter_add = 1 << 0, filter_remove = 1 << 1, filter_reorder = 1 << 2, filter_replace = 1 << 3, filter_rename = 1 << 4, filter_remove_playlist = 1 << 5, filter_default_action = 1 << 6 } |
| typedef playlist_lock | t_interface |
| typedef service_base | t_interface_parent |
Public Member Functions | |
| virtual bool | query_items_add (t_size p_base, const pfc::list_base_const_t< metadb_handle_ptr > &p_data, const bit_array &p_selection)=0 |
| virtual bool | query_items_reorder (const t_size *p_order, t_size p_count)=0 |
| virtual bool | query_items_remove (const bit_array &p_mask, bool p_force)=0 |
| virtual bool | query_item_replace (t_size p_index, const metadb_handle_ptr &p_old, const metadb_handle_ptr &p_new)=0 |
| virtual bool | query_playlist_rename (const char *p_new_name, t_size p_new_name_len)=0 |
| virtual bool | query_playlist_remove ()=0 |
| virtual bool | execute_default_action (t_size p_item)=0 |
| virtual void | on_playlist_index_change (t_size p_new_index)=0 |
| Notifies lock about changed index of the playlist, in result of user reordering playlists or removing other playlists. | |
| virtual void | on_playlist_remove ()=0 |
| Notifies lock about the locked playlist getting removed. | |
| virtual void | get_lock_name (pfc::string_base &p_out)=0 |
| Retrieves human-readable name of playlist lock to display. | |
| virtual void | show_ui ()=0 |
| Requests user interface of component controlling the playlist lock to be shown. | |
| virtual t_uint32 | get_filter_mask ()=0 |
| Queries which actions the lock filters. The return value must not change while the lock is registered with playlist_manager. The return value is a combination of one or more filter_* constants. | |
Static Public Attributes | |
| static const GUID | class_guid |
Reimplemented from service_base.
| anonymous enum |
| virtual bool playlist_lock::query_items_add | ( | t_size | p_base, | |
| const pfc::list_base_const_t< metadb_handle_ptr > & | p_data, | |||
| const bit_array & | p_selection | |||
| ) | [pure virtual] |
Queries whether specified item insertiion operation is allowed in the locked playlist.
| p_base | Index from which the items are being inserted. | |
| p_data | Items being inserted. | |
| p_selection | Caller-requested selection state of items being inserted. |
| virtual bool playlist_lock::query_items_reorder | ( | const t_size * | p_order, | |
| t_size | p_count | |||
| ) | [pure virtual] |
Queries whether specified item reorder operation is allowed in the locked playlist.
| p_order | Pointer to array containing permutation defining requested reorder operation. | |
| p_count | Number of items in array pointed to by p_order. This should always be equal to number of items on the locked playlist. |
| virtual bool playlist_lock::query_items_remove | ( | const bit_array & | p_mask, | |
| bool | p_force | |||
| ) | [pure virtual] |
Queries whether specified item removal operation is allowed in the locked playlist.
| p_mask | Specifies which items from locked playlist are being removed. | |
| p_force | If set to true, the call is made only for notification purpose and items are getting removed regardless (after e.g. they have been physically removed). |
| virtual bool playlist_lock::query_item_replace | ( | t_size | p_index, | |
| const metadb_handle_ptr & | p_old, | |||
| const metadb_handle_ptr & | p_new | |||
| ) | [pure virtual] |
Queries whether specified item replacement operation is allowed in the locked playlist.
| p_index | Index of the item being replaced. | |
| p_old | Old value of the item being replaced. | |
| p_new | New value of the item being replaced. |
| virtual bool playlist_lock::query_playlist_rename | ( | const char * | p_new_name, | |
| t_size | p_new_name_len | |||
| ) | [pure virtual] |
Queries whether renaming the locked playlist is allowed.
| p_new_name | Requested new name of the playlist; a UTF-8 encoded string. | |
| p_new_name_len | Length limit of the name string, in bytes (actual string may be shorter if null terminator is encountered before). Set this to infinite to use plain null-terminated strings. |
| virtual bool playlist_lock::query_playlist_remove | ( | ) | [pure virtual] |
Queries whether removal of the locked playlist is allowed. Note that the lock will be released when the playlist is removed.
| virtual bool playlist_lock::execute_default_action | ( | t_size | p_item | ) | [pure virtual] |
Executes "default action" (doubleclick etc) for specified playlist item. When the playlist is not locked, default action starts playback of the item.
| virtual void playlist_lock::on_playlist_index_change | ( | t_size | p_new_index | ) | [pure virtual] |
Notifies lock about changed index of the playlist, in result of user reordering playlists or removing other playlists.
| virtual void playlist_lock::on_playlist_remove | ( | ) | [pure virtual] |
Notifies lock about the locked playlist getting removed.
| virtual void playlist_lock::get_lock_name | ( | pfc::string_base & | p_out | ) | [pure virtual] |
Retrieves human-readable name of playlist lock to display.
| virtual void playlist_lock::show_ui | ( | ) | [pure virtual] |
Requests user interface of component controlling the playlist lock to be shown.
| virtual t_uint32 playlist_lock::get_filter_mask | ( | ) | [pure virtual] |
Queries which actions the lock filters. The return value must not change while the lock is registered with playlist_manager. The return value is a combination of one or more filter_* constants.
const GUID playlist_lock::class_guid [static] |
Initial value:
{ 0x88d7edb1, 0xa850, 0x42a4, { 0xbb, 0xab, 0x49, 0xe9, 0x55, 0xf4, 0xb8, 0x1f } }
1.5.5