contextmenu_item Class Reference

#include <contextmenu.h>

Inheritance diagram for contextmenu_item:

service_base contextmenu_item_simple

List of all members.

Public Types

enum  t_enabled_state { FORCE_OFF, DEFAULT_OFF, DEFAULT_ON }
typedef contextmenu_item t_interface_entrypoint
typedef contextmenu_item t_interface
typedef service_base t_interface_parent

Public Member Functions

virtual unsigned get_num_items ()=0
 Retrieves number of menu items provided by this contextmenu_item implementation.
virtual
contextmenu_item_node_root
instantiate_item (unsigned p_index, metadb_handle_list_cref p_data, const GUID &p_caller)=0
 Instantiates a context menu item (including sub-node tree for items that contain dynamically-generated sub-items).
virtual GUID get_item_guid (unsigned p_index)=0
 Retrieves GUID of the context menu item.
virtual void get_item_name (unsigned p_index, pfc::string_base &p_out)=0
 Retrieves human-readable name of the context menu item.
virtual void get_item_default_path (unsigned p_index, pfc::string_base &p_out)=0
 Retrieves default path of the context menu item ("" for root).
virtual bool get_item_description (unsigned p_index, pfc::string_base &p_out)=0
 Retrieves item's description to show in the status bar. Set p_out to the string to be displayed and return true if you provide a description, return false otherwise.
virtual t_enabled_state get_enabled_state (unsigned p_index)=0
 Signals whether the item should be forcefully hidden (FORCE_OFF), hidden by default but possible to add (DEFAULT_OFF) or shown by default (DEFAULT_ON).
virtual void item_execute_simple (unsigned p_index, const GUID &p_node, metadb_handle_list_cref p_data, const GUID &p_caller)=0
 Executes the menu item command without going thru the instantiate_item path. For items with dynamically-generated sub-items, p_node is identifies of the sub-item command to execute.
bool item_get_display_data_root (pfc::string_base &p_out, unsigned &displayflags, unsigned p_index, metadb_handle_list_cref p_data, const GUID &p_caller)
bool item_get_display_data (pfc::string_base &p_out, unsigned &displayflags, unsigned p_index, const GUID &p_node, metadb_handle_list_cref p_data, const GUID &p_caller)

Static Public Attributes

static const GUID caller_playlist = caller_active_playlist_selection
static const GUID caller_active_playlist_selection
static const GUID caller_active_playlist
static const GUID caller_playlist_manager
static const GUID caller_now_playing
static const GUID caller_keyboard_shortcut_list
static const GUID caller_media_library_viewer
static const GUID caller_undefined
static const GUID class_guid


Detailed Description

Service class for declaring context menu commands.
See contextmenu_item_simple for implementation helper without dynamic menu generation features.
All methods are valid from main app thread only.

Member Typedef Documentation

Reimplemented from service_base.


Member Enumeration Documentation

Enumerator:
FORCE_OFF 
DEFAULT_OFF 
DEFAULT_ON 


Member Function Documentation

virtual unsigned contextmenu_item::get_num_items (  )  [pure virtual]

Retrieves number of menu items provided by this contextmenu_item implementation.

Implemented in contextmenu_item_simple.

virtual contextmenu_item_node_root* contextmenu_item::instantiate_item ( unsigned  p_index,
metadb_handle_list_cref  p_data,
const GUID &  p_caller 
) [pure virtual]

Instantiates a context menu item (including sub-node tree for items that contain dynamically-generated sub-items).

virtual GUID contextmenu_item::get_item_guid ( unsigned  p_index  )  [pure virtual]

Retrieves GUID of the context menu item.

Implemented in contextmenu_item_simple.

virtual void contextmenu_item::get_item_name ( unsigned  p_index,
pfc::string_base p_out 
) [pure virtual]

Retrieves human-readable name of the context menu item.

Implemented in contextmenu_item_simple.

virtual void contextmenu_item::get_item_default_path ( unsigned  p_index,
pfc::string_base p_out 
) [pure virtual]

Retrieves default path of the context menu item ("" for root).

Implemented in contextmenu_item_simple.

virtual bool contextmenu_item::get_item_description ( unsigned  p_index,
pfc::string_base p_out 
) [pure virtual]

Retrieves item's description to show in the status bar. Set p_out to the string to be displayed and return true if you provide a description, return false otherwise.

Implemented in contextmenu_item_simple.

virtual t_enabled_state contextmenu_item::get_enabled_state ( unsigned  p_index  )  [pure virtual]

Signals whether the item should be forcefully hidden (FORCE_OFF), hidden by default but possible to add (DEFAULT_OFF) or shown by default (DEFAULT_ON).

Implemented in contextmenu_item_simple.

virtual void contextmenu_item::item_execute_simple ( unsigned  p_index,
const GUID &  p_node,
metadb_handle_list_cref  p_data,
const GUID &  p_caller 
) [pure virtual]

Executes the menu item command without going thru the instantiate_item path. For items with dynamically-generated sub-items, p_node is identifies of the sub-item command to execute.

bool contextmenu_item::item_get_display_data_root ( pfc::string_base p_out,
unsigned &  displayflags,
unsigned  p_index,
metadb_handle_list_cref  p_data,
const GUID &  p_caller 
)

bool contextmenu_item::item_get_display_data ( pfc::string_base p_out,
unsigned &  displayflags,
unsigned  p_index,
const GUID &  p_node,
metadb_handle_list_cref  p_data,
const GUID &  p_caller 
)


Member Data Documentation

Deprecated:
Use caller_active_playlist_selection instead.

Initial value:

{ 0x47502ba1, 0x816d, 0x4a3e, { 0xad, 0xe5, 0xa7, 0xa9, 0x86, 0xa, 0x67, 0xdb } }

Initial value:

{ 0xb3cc1030, 0xef26, 0x45cf, { 0xa8, 0x4a, 0x7f, 0xc1, 0x69, 0xbc, 0x9f, 0xfb } }

Initial value:

{ 0x5fdcd5e8, 0x6eb2, 0x4454, { 0x9e, 0xda, 0x52, 0x75, 0x22, 0x89, 0x3b, 0xed } }

Initial value:

{ 0x994c0d0e, 0x319e, 0x45f3, { 0x92, 0xfc, 0x51, 0x86, 0x16, 0xe7, 0x3a, 0xdc } }

Initial value:

{ 0xfabee3e9, 0x8901, 0x4df4, { 0xa2, 0xd7, 0xb9, 0x89, 0x8d, 0x86, 0xc3, 0x9b } }

Initial value:

 
{ 0xfda07c56, 0x5d0, 0x4b84, { 0x9f, 0xbd, 0xa8, 0xbe, 0x55, 0x6d, 0x47, 0x4d } }

Initial value:

{ 0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }

const GUID contextmenu_item::class_guid [static]

Initial value:

 
{ 0x1c0802f7, 0xcf24, 0x49ef, { 0xb9, 0x14, 0x8b, 0x98, 0x66, 0xf1, 0x97, 0x79 } }


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

Generated on Thu Aug 28 21:15:46 2008 for foobar2000 SDK by  doxygen 1.5.5