Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

CP_M_DragSource Class Reference

Class used in drag and drop to provide a data source.

Inheritance diagram for CP_M_DragSource:

CP_View_Imp CP_View CP_BackgroundView CP_FocusBorder CP_LittleArrowsEditBuddy CP_OpenGLView CP_PlatformControl CP_PrintView CP_QT_MovieView CP_ScrollableView CP_Scroller CP_SelectColorButton CP_Splitter CP_TextView CP_Toolbar CP_Window_Imp CP_Window_Imp CP_Window_Imp List of all members.

Public Member Functions

void ClearFlavors ()
Constructor / Destructor
 CP_M_DragSource ()
 Constructor.
virtual ~CP_M_DragSource () throw ()
 Destructor.
Constructor / Destructor
 CP_M_DragSource (FORMATETC *inDesiredFormats, DWORD inNumberFormats)

Protected Attributes

CP_IDropSourcefIDropSource
CP_IDataObjectfIDataObject
FORMATETC * fDataFormats
DWORD fNumberFormats
CP_EnumeratorfEnumerator
CP_DataStream fData

Constructor & Destructor Documentation

CPLAT_Begin_Namespace_CPLAT CP_M_DragSource::CP_M_DragSource  ) 
 

Constructor.

Exceptions:
none 

CP_M_DragSource::~CP_M_DragSource  )  throw () [virtual]
 

Destructor.

Exceptions:
none 

CP_M_DragSource::CP_M_DragSource FORMATETC *  inDesiredFormats,
DWORD  inNumberFormats
 

Contains the data.


Member Function Documentation

void CP_M_DragSource::AddFlavor CP_DragDrop inDragDrop,
FlavorType  inFlavor,
const void *  inData,
SInt32  inSize,
UInt32  inFlags = 0,
UInt32  inItem = 0
[protected, virtual]
 

Tracks the drag by calling on the OS to handle the drag.

Parameters:
inDragDrop The CP_DragDrop object performing the drag and drop operation.
FlavorType Type of data being added.
inData Data being added.
inSize Size of the data being added.
inFlags Flags describing the flavor.
inItem Item reference number.
Exceptions:
none 
Returns:
void

void CP_M_DragSource::TrackDrag CP_DragDrop inDragDrop,
CP_Event_Base inEvent
[protected, virtual]
 

Tracks the drag by calling on the OS to handle the drag.

Parameters:
inDragDrop The CP_DragDrop object performing the drag and drop operation.
inEvent Originating mouse event that initiated this drag and drop.
Exceptions:
none 
Returns:
void

CP_IDropSource* CP_M_DragSource::GetIDropSource  ) 
 

Return the CP_IDropSource object for the Windows OLE IDropSource interface .

CP_IDataObject* CP_M_DragSource::GetIDataObject  ) 
 

Return the CP_IDataObject object for the Windows OLE IDataObject interface .

HRESULT CP_M_DragSource::GetData LPFORMATETC  lpfe,
LPSTGMEDIUM  lpstg
 

GetData method. Caller is asking if we can supply data in a given format and medium. Subclasses should override the OnGetData method to return the data.

Parameters:
lpfe Pointer to a FORMATETC structure.
lpstg Pointer to a STGMEDIUM structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::GetDataHere LPFORMATETC  lpfe,
LPSTGMEDIUM  lpst
 

GetDataHere method.

Parameters:
lpfe Pointer to a FORMATETC structure.
lpstg Pointer to a STGMEDIUM structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::EnumFormatEtc DWORD  dwDir,
LPENUMFORMATETC *  lpEnum
 

Return a FORMATETC enumerator object to enumerate over the types of formats we supply.

Parameters:
dwDir Not used.
lpEnum Pointer to a ENUMFORMATEC structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::GetCanonicalFormatEtc LPFORMATETC  lpout,
LPFORMATETC  lpin
 

GetCanonicalFormatEtc method.

Parameters:
lpfe Pointer to a FORMATETC structure.
lpstg Pointer to a STGMEDIUM structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::QueryGetData LPFORMATETC  lpfe  ) 
 

Caller is asking for data in a specified format.

Parameters:
lpfe Pointer to a FORMATETC structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::SetData LPFORMATETC  lpfe,
STGMEDIUM *  lpst,
BOOL  fRelease
 

SetData method. Calls OnSetData which you should override if needed.

Parameters:
lpfe Pointer to a FORMATETC structure.
lpstg Pointer to a STGMEDIUM structure.
fRelease Flag to indicate if the data is to be released.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::DAdvise FORMATETC *  lpfe,
DWORD  dw,
LPADVISESINK  lpas,
DWORD FAR *  lpdw
 

DAdvise method. Calls OnDAdvise which you should override if needed.

Parameters:
lpfe Pointer to a FORMATETC structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::DUnadvise DWORD  dw  ) 
 

DAdvise method. Calls OnDUnadvise which you should override if needed.

Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::EnumDAdvise LPENUMSTATDATA *  lpen  ) 
 

DAdvise method. Calls OnEnumDAdvise which you should override if needed.

Exceptions:
none 
Returns:
HRESULT

void CP_M_DragSource::ClearFlavors  ) 
 

Empty the list of data flavors currently being stored.

Exceptions:
none 
Returns:
void

HRESULT CP_M_DragSource::OnGetData LPFORMATETC  lpfe,
LPSTGMEDIUM  lpstg
[protected, virtual]
 

GetData Method. Caller is asking if we can supply data in a given format and medium. If your data is in a format other than kCP_E_ClipboardFormat_DataStream you need to override this to provide your data.

Parameters:
lpfe Pointer to a FORMATETC structure.
lpstg Pointer to a STGMEDIUM structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::OnQueryGetData LPFORMATETC  lpfe  )  [protected, virtual]
 

GetData Method. Caller is asking if we can supply data in a given format. If your data is in a format other than kCP_E_ClipboardFormat_DataStream you need to override this to provide your data.

Parameters:
lpfe Pointer to a FORMATETC structure.
Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::OnGetDataHere LPFORMATETC  lpfe,
LPSTGMEDIUM  lpst
[protected, virtual]
 

OnGetDataHere method. Returns E_NOTIMPL. Subclasses need to override if they implement.

Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::OnGetCanonicalFormatEtc LPFORMATETC  lpout,
LPFORMATETC  lpin
[protected, virtual]
 

OnGetCanonicalFormatEtc method. Returns E_NOTIMPL. Subclasses need to override if they implement.

Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::OnSetData LPFORMATETC  lpfe,
STGMEDIUM *  lpst,
BOOL  fRelease
[protected, virtual]
 

OnSetData method. Returns E_NOTIMPL. Subclasses need to override if they implement.

Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::OnDAdvise FORMATETC *  lpfe,
DWORD  dw,
LPADVISESINK  lpas,
DWORD FAR *  lpdw
[protected, virtual]
 

OnDAdvise method. Returns E_NOTIMPL. Subclasses need to override if they implement.

Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::OnDUnadvise DWORD  dw  )  [protected, virtual]
 

OnDUnadvise method. Returns E_NOTIMPL. Subclasses need to override if they implement.

Exceptions:
none 
Returns:
HRESULT

HRESULT CP_M_DragSource::OnEnumDAdvise LPENUMSTATDATA *  lpen  )  [protected, virtual]
 

OnEnumDAdvise method. Returns E_NOTIMPL. Subclasses need to override if they implement.

Exceptions:
none 
Returns:
HRESULT


Member Data Documentation

CP_IDropSource* CP_M_DragSource::fIDropSource [protected]
 

CP_IDataObject* CP_M_DragSource::fIDataObject [protected]
 

Windows OLE IDropSource interface object.

FORMATETC* CP_M_DragSource::fDataFormats [protected]
 

Windows OLE IDataObject interface object.

DWORD CP_M_DragSource::fNumberFormats [protected]
 

Array of FORMATETC structure with desired formats.

CP_Enumerator* CP_M_DragSource::fEnumerator [protected]
 

Number of FORMATETC structures.

CP_DataStream CP_M_DragSource::fData [protected]
 

CP_Enumerator object.


The documentation for this class was generated from the following files:
Generated on Sat Sep 17 20:01:49 2005 for CPLAT by  doxygen 1.4.0