![]() | InDesign SDK 20.5 |
#include <IDataExchangeHandler.h>

Public Types | |
| enum | { kDefaultIID = IID_IDATAEXCHANGEHANDLER } |
Public Member Functions | |
| virtual void | CreateScrapStorage ()=0 |
| virtual void | Clear ()=0 |
| virtual bool16 | IsEmpty () const =0 |
| virtual PMFlavor | GetFlavor () const =0 |
| virtual DataExchangeResponse | CanInternalizeData (IPMDataObject *whichItem) const =0 |
| virtual bool16 | CanConvertExternalFlavor (ExternalPMFlavor fromWhichFlavor) const =0 |
| virtual void | AddInternalizeableFlavorsToList (OrderedFlavorList &flavorList) const =0 |
| virtual void | AddExternalizeableFlavorsToList (OrderedFlavorList &flavorList) const =0 |
| virtual ErrorCode | ExternalizePromises (IPMDataObject *whichItem)=0 |
| virtual ErrorCode | Externalize (IPMDataObject *whichItem, ExternalPMFlavor toWhichFlavor, IPMStream *s)=0 |
| virtual ErrorCode | Internalize (IPMDataObject *whichItem)=0 |
| virtual ErrorCode | Internalize (IPMDataObject *whichItem, ExternalPMFlavor fromWhichFlavor, IPMStream *s)=0 |
Public Member Functions inherited from IPMUnknown | |
| virtual IPMUnknown * | QueryInterface (PMIID interfaceID) const =0 |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
This interface is used when exchanging data through the clipboard, drag drop, OSX services, libraries, external databases, etc.
Each implementation of IDataExchangeHandler supports a unique native (internal) PMFlavor type. IDataExchangeHandler bosses live in the scrap databases associated with each IDataExchangeController, one copy of each handler boss will be found in each scrap database. The implementation of a given IDataExchangeHandler is extensible via the IDataExchangeHandlerFlavorHelper interface.
| anonymous enum |
Define the default IID for IDataExchangeHandler.
| pure virtual |
Get the internal flavors that can be produced in Externalize, or converted during externalize.
| flavorList | a list that are externalizeable. |
Implemented in CDataExchangeHandler_Extensible, and CDataExchangeHandlerFor.
| pure virtual |
Get the external flavors that can be produced in Externalize, or converted during internalize.
| flavorList | a list that are internalizeable. |
Implemented in CDataExchangeHandler_Extensible, and CDataExchangeHandlerFor.
| pure virtual |
Check if this handler can convert this type of external flavor to its internal flavor.
| fromWhichFlavor | the kind of external flavor. |
Implemented in CDataExchangeHandler_Extensible, and CDataExchangeHandlerFor.
| pure virtual |
Check if this handler can convert external data to its internal flavor.
| whichItem | the item to be internalized. |
Implemented in CDataExchangeHandler_Extensible, and CDataExchangeHandlerFor.
| pure virtual |
Clear the data held by this handler.
Implemented in CDataExchangeHandlerFor, BscDNDCustomDEHandler, CusDtLnkUIDataExchangeHandler, and CDataExchangeHandler_Extensible.
| pure virtual |
Create handler specific initial data (colors, styles, etc.) required for a new scrap database.
Implemented in BscDNDCustomDEHandler, CusDtLnkUIDataExchangeHandler, CDataExchangeHandlerFor, and CDataExchangeHandler_Extensible.
| pure virtual |
Externalize handlers contents into the given flavor on a stream (for clipboard and drag/drop, etc.).
| whichItem | the item to be externalized. |
| toWhichFlavor | the data in the item should be converted into this external flavor. |
| s | the stream that will hold externalized contents. |
Implemented in CDataExchangeHandlerFor, and CDataExchangeHandler_Extensible.
| pure virtual |
Make promises for data flavors this handler can produce during externalization (for clipboard and drag/drop, etc.).
| whichItem | the item to be externalized. |
Implemented in CDataExchangeHandlerFor, and CDataExchangeHandler_Extensible.
| pure virtual |
Get the Internal flavor (data type) this handler deals with.
Implemented in BscDNDCustomDEHandler, CusDtLnkUIDataExchangeHandler, CDataExchangeHandler_Extensible, and CDataExchangeHandlerFor.
| pure virtual |
Internalize the data item (for clipboard or drag/drop).
| whichItem | the item to be internalized. |
Implemented in CDataExchangeHandlerFor, and CDataExchangeHandler_Extensible.
| pure virtual |
Internalize the contents of a stream as the given flavor (for clipboard or drag/drop, etc.).
| whichItem | the item to be internalized. |
| toWhichFlavor | the data for the item will be converted from this external flavor. |
| s | the stream that will hold the internalized contents. |
Implemented in CDataExchangeHandlerFor, and CDataExchangeHandler_Extensible.
| pure virtual |
Does the handler contain data, or is it empty.
Implemented in CDataExchangeHandlerFor, BscDNDCustomDEHandler, CusDtLnkUIDataExchangeHandler, and CDataExchangeHandler_Extensible.