foobar2000 SDK
2015-08-03
|
#include <ui_element.h>
Public Member Functions | |
virtual ui_element_children_enumerator_ptr | enumerate_children (ui_element_config::ptr cfg)=0 |
FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT (ui_element) | |
virtual ui_element_config::ptr | get_default_configuration ()=0 |
virtual bool | get_description (pfc::string_base &p_out) |
virtual bool | get_element_group (pfc::string_base &p_out) |
virtual GUID | get_guid ()=0 |
virtual t_ui_icon | get_icon () |
virtual void | get_name (pfc::string_base &p_out)=0 |
virtual GUID | get_subclass ()=0 |
virtual ui_element_config::ptr | import (ui_element_config::ptr cfg) |
virtual ui_element_instance_ptr | instantiate (HWND p_parent, ui_element_config::ptr cfg, ui_element_instance_callback_ptr p_callback)=0 |
virtual bool | is_user_addable () |
Public Member Functions inherited from service_base | |
template<typename outPtr_t > | |
bool | cast (outPtr_t &outPtr) |
virtual int | service_add_ref ()=0 throw () |
virtual bool | service_query (service_ptr_t< service_base > &p_out, const GUID &p_guid) |
template<class T > | |
bool | service_query_t (service_ptr_t< T > &p_out) |
virtual int | service_release ()=0 throw () |
Static Public Member Functions | |
static bool | g_find (service_ptr_t< ui_element > &out, const GUID &id) |
static bool | g_get_name (pfc::string_base &p_out, const GUID &p_guid) |
Additional Inherited Members | |
Public Types inherited from service_base | |
typedef service_base | t_interface |
Protected Member Functions inherited from service_base | |
service_base () | |
~service_base () | |
Entrypoint interface for each UI element implementation.
Definition at line 367 of file ui_element.h.
|
pure virtual |
Implemented by container elements only. Returns NULL for non-container elements.
Allows caller to parse and edit child element structure of container elements.
Implemented in ui_element_impl< ImplementBumpableElem< CMyElemWindow >, ui_element_v2 >.
ui_element::FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT | ( | ui_element | ) |
|
static |
Definition at line 90 of file ui_element.cpp.
|
static |
Definition at line 94 of file ui_element.cpp.
|
pure virtual |
Retrieves default configuration of the element.
Implemented in ui_element_impl< ImplementBumpableElem< CMyElemWindow >, ui_element_v2 >.
|
inlinevirtual |
Retrieves a human-readable description of the element.
Reimplemented in ui_element_impl< ImplementBumpableElem< CMyElemWindow >, ui_element_v2 >.
Definition at line 401 of file ui_element.h.
|
virtual |
Retrieves a human-readable description of the element's function to use for grouping in the element list. The default implementation relies on get_subclass() return value.
Definition at line 74 of file ui_element.cpp.
|
pure virtual |
Retrieves GUID of the element.
Implemented in ui_element_impl< ImplementBumpableElem< CMyElemWindow >, ui_element_v2 >.
|
inlinevirtual |
Returns an icon to show in available UI element lists, etc. Returns NULL when there is no icon to display.
Definition at line 398 of file ui_element.h.
|
pure virtual |
Retrieves a simple human-readable name of the element.
Implemented in ui_element_impl< ImplementBumpableElem< CMyElemWindow >, ui_element_v2 >.
|
pure virtual |
Retrieves subclass GUID of the element. Typically one of ui_element_subclass_* values, but you can create your own custom subclasses. Subclass GUIDs are used for various purposes such as focusing an UI element that provides specific functionality.
Implemented in ui_element_impl< ImplementBumpableElem< CMyElemWindow >, ui_element_v2 >.
|
inlinevirtual |
In certain cases, an UI element can import settings of another UI element (eg. vertical<=>horizontal splitter, tabs<=>splitters) when user directly replaces one of such elements with another. Overriding this function allows special handling of such cases.
Implementation hint: when implementing a multi-child container, you probably want to takeover child elements replacing another container element; use enumerate_children() on the element the configuration belongs to to grab those.
Definition at line 392 of file ui_element.h.
|
pure virtual |
Instantiates the element using specified settings.
|
inlinevirtual |
Override this to return false when your element is for internal use only and should not be user-addable.
Definition at line 395 of file ui_element.h.