ole_interaction Class Reference

#include <ole_interaction.h>

Inheritance diagram for ole_interaction:

service_base

List of all members.

Public Types

enum  { KClipboardFormatSimpleLocations, KClipboardFormatFPL, KClipboardFormatMultiFPL, KClipboardFormatTotal }
typedef ole_interaction t_interface_entrypoint
typedef ole_interaction t_interface
typedef service_base t_interface_parent

Public Member Functions

virtual t_uint32 get_clipboard_format (t_uint32 which)=0
virtual pfc::com_ptr_t
< IDataObject > 
create_dataobject (metadb_handle_list_cref source)=0
 Creates an IDataObject from a group of tracks.
virtual pfc::com_ptr_t
< IDataObject > 
create_dataobject (const playlist_dataobject_desc &source)=0
 Creates an IDataObject from one or more playlists, including playlist name info for re-creating those playlists later.
virtual HRESULT parse_dataobject_playlists (pfc::com_ptr_t< IDataObject > obj, playlist_dataobject_desc &out)=0
 Attempts to parse an IDataObject as playlists.
virtual HRESULT parse_dataobject_immediate (pfc::com_ptr_t< IDataObject > obj, metadb_handle_list_ref out)=0
 For internal use only. Will succeed only if the metadb_handle list can be generated immediately, without performing potentially timeconsuming tasks such as parsing media files (for an example when the specified IDataObject contains data in one of our internal formats).
virtual HRESULT parse_dataobject (pfc::com_ptr_t< IDataObject > obj, dropped_files_data &out)=0
 Attempts to parse an IDataObject into a dropped_files_data object (list of metadb_handles if immediately available, list of file paths otherwise).
virtual HRESULT check_dataobject (pfc::com_ptr_t< IDataObject > obj, DWORD &dropEffect, bool &isNative)=0
 Checks whether the specified IDataObject appears to be parsable by our parse_dataobject methods.
virtual HRESULT check_dataobject_playlists (pfc::com_ptr_t< IDataObject > obj)=0
 Checks whether the specified IDataObject appears to be parsable as playlists (parse_dataobject_playlists method).

Static Public Attributes

static const GUID class_guid = { 0xfbee40c9, 0xef36, 0x410b, { 0x9d, 0x52, 0x7e, 0x56, 0x39, 0x59, 0xf3, 0xd1 } }


Detailed Description

Provides various methods for interaction between foobar2000 and OLE IDataObjects, Windows Clipboard, drag&drop and such. To instantiate, use static_api_ptr_t<ole_interaction>.
Since:
0.9.5

Member Typedef Documentation

Reimplemented from service_base.


Member Enumeration Documentation

anonymous enum

Enumerator:
KClipboardFormatSimpleLocations 
KClipboardFormatFPL 
KClipboardFormatMultiFPL 
KClipboardFormatTotal 


Member Function Documentation

virtual t_uint32 ole_interaction::get_clipboard_format ( t_uint32  which  )  [pure virtual]

Retrieves clipboard format ID for one of foobar2000's internal data formats.

Parameters:
which One of KClipboardFormat* constants.

virtual pfc::com_ptr_t<IDataObject> ole_interaction::create_dataobject ( metadb_handle_list_cref  source  )  [pure virtual]

Creates an IDataObject from a group of tracks.

virtual pfc::com_ptr_t<IDataObject> ole_interaction::create_dataobject ( const playlist_dataobject_desc source  )  [pure virtual]

Creates an IDataObject from one or more playlists, including playlist name info for re-creating those playlists later.

virtual HRESULT ole_interaction::parse_dataobject_playlists ( pfc::com_ptr_t< IDataObject >  obj,
playlist_dataobject_desc out 
) [pure virtual]

Attempts to parse an IDataObject as playlists.

virtual HRESULT ole_interaction::parse_dataobject_immediate ( pfc::com_ptr_t< IDataObject >  obj,
metadb_handle_list_ref  out 
) [pure virtual]

For internal use only. Will succeed only if the metadb_handle list can be generated immediately, without performing potentially timeconsuming tasks such as parsing media files (for an example when the specified IDataObject contains data in one of our internal formats).

virtual HRESULT ole_interaction::parse_dataobject ( pfc::com_ptr_t< IDataObject >  obj,
dropped_files_data out 
) [pure virtual]

Attempts to parse an IDataObject into a dropped_files_data object (list of metadb_handles if immediately available, list of file paths otherwise).

virtual HRESULT ole_interaction::check_dataobject ( pfc::com_ptr_t< IDataObject >  obj,
DWORD &  dropEffect,
bool &  isNative 
) [pure virtual]

Checks whether the specified IDataObject appears to be parsable by our parse_dataobject methods.

virtual HRESULT ole_interaction::check_dataobject_playlists ( pfc::com_ptr_t< IDataObject >  obj  )  [pure virtual]

Checks whether the specified IDataObject appears to be parsable as playlists (parse_dataobject_playlists method).


Member Data Documentation

const GUID ole_interaction::class_guid = { 0xfbee40c9, 0xef36, 0x410b, { 0x9d, 0x52, 0x7e, 0x56, 0x39, 0x59, 0xf3, 0xd1 } } [static]


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

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