menu_item_resolver Class Reference

#include <contextmenu.h>

Inheritance diagram for menu_item_resolver:

service_base

List of all members.

Public Types

typedef menu_item_resolver t_interface_entrypoint
typedef menu_item_resolver t_interface
typedef service_base t_interface_parent

Public Member Functions

virtual bool resolve_context_command (const GUID &id, service_ptr_t< class contextmenu_item > &out, t_uint32 &out_index)=0
virtual bool resolve_main_command (const GUID &id, service_ptr_t< class mainmenu_commands > &out, t_uint32 &out_index)=0

Static Public Member Functions

static bool g_resolve_context_command (const GUID &id, service_ptr_t< class contextmenu_item > &out, t_uint32 &out_index)
static bool g_resolve_main_command (const GUID &id, service_ptr_t< class mainmenu_commands > &out, t_uint32 &out_index)

Static Public Attributes

static const GUID class_guid = { 0xac70ecdc, 0xe1d, 0x4db2, { 0x9c, 0xd0, 0xc9, 0xb8, 0xa9, 0xcd, 0x28, 0xfa } }


Detailed Description

Static methods safe to use in prior versions as it will use slow fallback mode when the service isn't present.
Functionality provided by menu_item_resolver methods isn't much different from just walking all registered contextmenu_item / mainmenu_commands implementations to find the command we want, but it uses a hint map to locate the service we're looking for without walking all of them which may be significantly faster in certain scenarios.
Since:
0.9.5.1

Member Typedef Documentation

Reimplemented from service_base.


Member Function Documentation

virtual bool menu_item_resolver::resolve_context_command ( const GUID &  id,
service_ptr_t< class contextmenu_item > &  out,
t_uint32 out_index 
) [pure virtual]

virtual bool menu_item_resolver::resolve_main_command ( const GUID &  id,
service_ptr_t< class mainmenu_commands > &  out,
t_uint32 out_index 
) [pure virtual]

static bool menu_item_resolver::g_resolve_context_command ( const GUID &  id,
service_ptr_t< class contextmenu_item > &  out,
t_uint32 out_index 
) [static]

static bool menu_item_resolver::g_resolve_main_command ( const GUID &  id,
service_ptr_t< class mainmenu_commands > &  out,
t_uint32 out_index 
) [static]


Member Data Documentation

const GUID menu_item_resolver::class_guid = { 0xac70ecdc, 0xe1d, 0x4db2, { 0x9c, 0xd0, 0xc9, 0xb8, 0xa9, 0xcd, 0x28, 0xfa } } [static]


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

Generated on Fri Apr 25 18:49:46 2008 for foobar2000 SDK by  doxygen 1.5.5