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

Public Types | |
| enum | { kDefaultIID = IID_IPMDATAOBJECT } |
| enum | { kUnspecifiedUsage = -1, kInternalizeUsage = 0, kExternalizeUsage = 1 } |
Public Member Functions | |
| virtual void | PromiseFlavor (ExternalPMFlavor newFlavor, PMFlavorFlags flavorFlags=kNormalFlavorFlag)=0 |
| virtual uint32 | GetItemID () const =0 |
| virtual void | SetItemID (uint32 id)=0 |
| virtual uint16 | CountFlavors () const =0 |
| virtual K2Vector < ExternalPMFlavor > * | GetPromisedFlavors () const =0 |
| virtual bool16 | FlavorExists (ExternalPMFlavor requestedFlavor) const =0 |
| virtual DataExchangeResponse | FlavorExistsWithPriority (ExternalPMFlavor flavor) const =0 |
| virtual uint32 | GetSizeOfFlavorData (ExternalPMFlavor flavor) const =0 |
| virtual IPMStream * | GetStreamForReading (ExternalPMFlavor flavor)=0 |
| virtual IPMStream * | GetStreamForWriting (ExternalPMFlavor flavor)=0 |
| virtual void | FinishedWithStream (IPMStream *)=0 |
| virtual int16 | GetUsage () const =0 |
| virtual void | SetUsage (int16)=0 |
Public Member Functions inherited from IPMUnknown | |
| virtual IPMUnknown * | QueryInterface (PMIID interfaceID) const =0 |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
Interface used to represent the data in a data exchange operation.
Subclassed to handle communication with platform data exchange frameworks. Subclasses should derive from the shared implementation class CPMDataObject. On Win WPMDataObject represents all OLE based data exchange, while for the Mac there are separate MDragDropObject and MClipboardDataObject implementations.
| anonymous enum |
| pure virtual |
Get the count of promised flavors.
| pure virtual |
Framework call signifying that the stream is no longer needed
| IPMStream* | INOUT DESCRIPTION |
Implemented in CPMDataObject.
| pure virtual |
Does this item support the requested flavor
| requestedFlavor | IN the flavor of interest |
| pure virtual |
Does this item support the requested flavor - if true, also returns the priority and flavor flags. Priority is determined by the order in which flavors are added to an item: highest are first, lowest are last.
| flavor | IN the flavor of interest |
Implemented in CPMDataObject.
| pure virtual |
Get the unique item id (unique within a single data exchange operation).
Implemented in CPMDataObject.
| pure virtual |
Get the list of promised flavors
| pure virtual |
Get the size, in bytes, of the data associated with a flavor NOTE: if called for a promised flavor, it will trigger the promise to be fulfilled. This can be time consuming.
| flavor | IN the flavor of interest |
| pure virtual |
Get a stream that can be used to read flavor data from the object. Called by the framework, clients are usually passed a stream when necessary.
| flavor | IN the flavor of interest |
Implemented in CPMDataObject.
| pure virtual |
Get a stream that can be used to write flavor data to the object Called by the framework, clients are usually passed a stream when necessary.
| flavor | IN the flavor of interest |
Implemented in CPMDataObject.
| pure virtual |
Framework call to get the intended use for this item
Implemented in CPMDataObject.
| pure virtual |
Add a flavor to the item as a promise.
| newFlavor | IN flavor to add |
| flavorFlags | IN flavor flags, if any |
| pure virtual |
Framework call to set the unique item id (unique within a single data exchange operation).
| id | IN the id of the item |
Implemented in CPMDataObject.
| pure virtual |
Framework call to set the intended use for this item
| int16 | IN one of kUnspecifiedUsage, kInternalizeUsage, or kExternalizeUsage |
Implemented in CPMDataObject.