playlist_incoming_item_filter Class Reference

#include <playlist.h>

Inheritance diagram for playlist_incoming_item_filter:

service_base playlist_incoming_item_filter_v2

List of all members.

Public Types

typedef
playlist_incoming_item_filter 
t_interface_entrypoint
typedef
playlist_incoming_item_filter 
t_interface
typedef service_base t_interface_parent

Public Member Functions

virtual bool filter_items (const pfc::list_base_const_t< metadb_handle_ptr > &in, pfc::list_base_t< metadb_handle_ptr > &out)=0
virtual bool process_locations (const pfc::list_base_const_t< const char * > &p_urls, pfc::list_base_t< metadb_handle_ptr > &p_out, bool p_filter, const char *p_restrict_mask_override, const char *p_exclude_mask_override, HWND p_parentwnd)=0
virtual bool process_dropped_files (interface IDataObject *pDataObject, pfc::list_base_t< metadb_handle_ptr > &p_out, bool p_filter, HWND p_parentwnd)=0
virtual bool process_dropped_files_check (interface IDataObject *pDataObject)=0
 Checks whether IDataObject contains one of known data formats that can be translated to a list of metadb_handles.
virtual bool process_dropped_files_check_if_native (interface IDataObject *pDataObject)=0
 Checks whether IDataObject contains our own private data format (drag&drop within the app etc).
virtual interface IDataObject * create_dataobject (const pfc::list_base_const_t< metadb_handle_ptr > &p_data)=0
 Creates an IDataObject from specified metadb_handle list.
virtual bool process_dropped_files_check_ex (interface IDataObject *pDataObject, DWORD *p_effect)=0
virtual bool process_dropped_files_delayed (dropped_files_data &p_out, interface IDataObject *pDataObject)=0
bool process_location (const char *url, pfc::list_base_t< metadb_handle_ptr > &out, bool filter, const char *p_mask, const char *p_exclude, HWND p_parentwnd)

Static Public Attributes

static const GUID class_guid


Member Typedef Documentation

Reimplemented from service_base.

Reimplemented in playlist_incoming_item_filter_v2.


Member Function Documentation

virtual bool playlist_incoming_item_filter::filter_items ( const pfc::list_base_const_t< metadb_handle_ptr > &  in,
pfc::list_base_t< metadb_handle_ptr > &  out 
) [pure virtual]

virtual bool playlist_incoming_item_filter::process_locations ( const pfc::list_base_const_t< const char * > &  p_urls,
pfc::list_base_t< metadb_handle_ptr > &  p_out,
bool  p_filter,
const char *  p_restrict_mask_override,
const char *  p_exclude_mask_override,
HWND  p_parentwnd 
) [pure virtual]

Deprecated; use playlist_incoming_item_filter_v2::process_locations_async() when possible.
Converts one or more paths to a list of metadb_handles; displays a progress dialog.
Note that this function creates modal dialog and does not return until the operation has completed.

Returns:
True on success, false on user abort.

virtual bool playlist_incoming_item_filter::process_dropped_files ( interface IDataObject *  pDataObject,
pfc::list_base_t< metadb_handle_ptr > &  p_out,
bool  p_filter,
HWND  p_parentwnd 
) [pure virtual]

Deprecated; use playlist_incoming_item_filter_v2::process_dropped_files_async() when possible.
Converts an IDataObject to a list of metadb_handles. Using this function is strongly disrecommended as it implies blocking the drag&drop source app (as well as our app).

Returns:
True on success, false on user abort or unknown data format.

virtual bool playlist_incoming_item_filter::process_dropped_files_check ( interface IDataObject *  pDataObject  )  [pure virtual]

Checks whether IDataObject contains one of known data formats that can be translated to a list of metadb_handles.

virtual bool playlist_incoming_item_filter::process_dropped_files_check_if_native ( interface IDataObject *  pDataObject  )  [pure virtual]

Checks whether IDataObject contains our own private data format (drag&drop within the app etc).

virtual interface IDataObject* playlist_incoming_item_filter::create_dataobject ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_data  )  [pure virtual]

Creates an IDataObject from specified metadb_handle list.

virtual bool playlist_incoming_item_filter::process_dropped_files_check_ex ( interface IDataObject *  pDataObject,
DWORD *  p_effect 
) [pure virtual]

Checks whether IDataObject contains one of known data formats that can be translated to a list of metadb_handles.
This function also returns drop effects to use (see: IDropTarget::DragEnter(), IDropTarget::DragOver() ). In certain cases, drag effects are necessary for drag&drop to work at all (such as dragging links from IE).

virtual bool playlist_incoming_item_filter::process_dropped_files_delayed ( dropped_files_data p_out,
interface IDataObject *  pDataObject 
) [pure virtual]

Dumps IDataObject content to specified dropped_files_data object, without any time-consuming processing.
Using this function instead of process_dropped_files() and processing dropped_files_data outside drop handler allows you to avoid blocking drop source app when processing large directories etc.
Note: since 0.9.3, it is recommended to use playlist_incoming_item_filter_v2::process_dropped_files_async() instead.

Returns:
True on success, false when IDataObject does not contain any of known data formats.

bool playlist_incoming_item_filter::process_location ( const char *  url,
pfc::list_base_t< metadb_handle_ptr > &  out,
bool  filter,
const char *  p_mask,
const char *  p_exclude,
HWND  p_parentwnd 
)


Member Data Documentation

Initial value:

 
{ 0xeb8fa333, 0xf365, 0x46ad, { 0x86, 0x21, 0x34, 0x56, 0x71, 0x56, 0x7b, 0xaa } }

Reimplemented in playlist_incoming_item_filter_v2.


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

Generated on Fri Apr 18 13:56:54 2008 for foobar2000 SDK by  doxygen 1.5.5