Files
common/CEF4Delphi/win32/hpps/uCEFDragAndDropMgr.hpp
T
2026-06-12 23:18:12 +08:00

106 lines
5.9 KiB
C++

// CodeGear C++Builder
// Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc.
// All rights reserved
// (DO NOT EDIT: machine generated header) 'uCEFDragAndDropMgr.pas' rev: 37.00 (Windows)
#ifndef uCEFDragAndDropMgrHPP
#define uCEFDragAndDropMgrHPP
#pragma delphiheader begin
#pragma option push
#if defined(__BORLANDC__) && !defined(__clang__)
#pragma option -w- // All warnings off
#pragma option -Vx // Zero-length empty class member
#endif
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>
#include <Winapi.Windows.hpp>
#include <Winapi.ActiveX.hpp>
#include <Winapi.ShlObj.hpp>
#include <Winapi.ShellAPI.hpp>
#include <System.Classes.hpp>
#include <System.SysUtils.hpp>
#include <System.Math.hpp>
#include <System.StrUtils.hpp>
#include <System.AnsiStrings.hpp>
#include <uCEFDragData.hpp>
#include <uCEFInterfaces.hpp>
#include <uCEFTypes.hpp>
#include <uCEFOLEDragAndDrop.hpp>
#include <System.Types.hpp>
//-- user supplied -----------------------------------------------------------
namespace Ucefdraganddropmgr
{
//-- forward type declarations -----------------------------------------------
class DELPHICLASS TCEFDragAndDropMgr;
//-- type declarations -------------------------------------------------------
typedef void __fastcall (__closure *TDragEnterEvent)(System::TObject* Sender, const Ucefinterfaces::_di_ICefDragData aDragData, System::LongInt grfKeyState, const Winapi::Windows::TPoint &pt, System::LongInt &dwEffect);
typedef void __fastcall (__closure *TDragOverEvent)(System::TObject* Sender, System::LongInt grfKeyState, const Winapi::Windows::TPoint &pt, System::LongInt &dwEffect);
typedef void __fastcall (__closure *TDropEvent)(System::TObject* Sender, System::LongInt grfKeyState, const Winapi::Windows::TPoint &pt, System::LongInt &dwEffect);
class PASCALIMPLEMENTATION TCEFDragAndDropMgr : public Ucefoledraganddrop::TOLEDragAndDropMgr
{
typedef Ucefoledraganddrop::TOLEDragAndDropMgr inherited;
protected:
Ucefinterfaces::_di_ICefDragData FCurrentDragData;
int FOLEEffect;
unsigned FMozURLFormat;
unsigned FHTMLFormat;
unsigned FFileDescFormat;
unsigned FFileContentsFormat;
TDragEnterEvent FOnDragEnter;
TDragOverEvent FOnDragOver;
System::Classes::TNotifyEvent FOnDragLeave;
TDropEvent FOnDrop;
bool __fastcall DragDataToDataObject_Unicode(const Ucefinterfaces::_di_ICefDragData aDragData, Winapi::Activex::TFormatEtc &aFormat, Winapi::Activex::TStgMedium &aMedium);
bool __fastcall DragDataToDataObject_Text(const Ucefinterfaces::_di_ICefDragData aDragData, Winapi::Activex::TFormatEtc &aFormat, Winapi::Activex::TStgMedium &aMedium);
bool __fastcall DragDataToDataObject_HTML(const Ucefinterfaces::_di_ICefDragData aDragData, Winapi::Activex::TFormatEtc &aFormat, Winapi::Activex::TStgMedium &aMedium);
bool __fastcall DragDataToDataObject_URL(const Ucefinterfaces::_di_ICefDragData aDragData, Winapi::Activex::TFormatEtc &aFormat, Winapi::Activex::TStgMedium &aMedium);
bool __fastcall DragDataToDataObject_FileDesc(const Ucefinterfaces::_di_ICefDragData aDragData, Winapi::Activex::TFormatEtc &aFormat, Winapi::Activex::TStgMedium &aMedium);
bool __fastcall DragDataToDataObject_FileContents(const Ucefinterfaces::_di_ICefDragData aDragData, Winapi::Activex::TFormatEtc &aFormat, Winapi::Activex::TStgMedium &aMedium);
void __fastcall DataObjectToDragData(const _di_IDataObject aDataObject, Ucefinterfaces::_di_ICefDragData &aDragData);
bool __fastcall DataObjectToDragData_Unicode(Winapi::Activex::TStgMedium &aMedium, Ucefinterfaces::_di_ICefDragData &aDragData);
bool __fastcall DataObjectToDragData_Text(Winapi::Activex::TStgMedium &aMedium, Ucefinterfaces::_di_ICefDragData &aDragData);
bool __fastcall DataObjectToDragData_URL(Winapi::Activex::TStgMedium &aMedium, Ucefinterfaces::_di_ICefDragData &aDragData);
bool __fastcall DataObjectToDragData_HTML(Winapi::Activex::TStgMedium &aMedium, Ucefinterfaces::_di_ICefDragData &aDragData);
bool __fastcall DataObjectToDragData_FileDrop(Winapi::Activex::TStgMedium &aMedium, Ucefinterfaces::_di_ICefDragData &aDragData);
System::AnsiString __fastcall HtmlToCFHtml(Uceftypes::ustring &aHTML, Uceftypes::ustring &aBaseURL);
void __fastcall CFHtmlToHtml(const System::AnsiString cf_html, System::UnicodeString &html, System::UnicodeString &base_url);
System::AnsiString __fastcall ZeroFiller(int aNumber, int aLength);
System::UnicodeString __fastcall FindStringField(const System::AnsiString aString, const System::AnsiString aFieldName, int &aPos);
public:
__fastcall TCEFDragAndDropMgr();
__fastcall virtual ~TCEFDragAndDropMgr();
Uceftypes::TCefDragOperation __fastcall StartDragging();
bool __fastcall CloneDragData(const Ucefinterfaces::_di_ICefDragData aDragData, Uceftypes::TCefDragOperations aAllowedOps);
virtual HRESULT __fastcall DragEnter(const _di_IDataObject DataObj, System::LongInt grfKeyState, const Winapi::Windows::TPoint &pt, System::LongInt &dwEffect);
virtual HRESULT __fastcall DragOver(System::LongInt grfKeyState, const Winapi::Windows::TPoint &pt, System::LongInt &dwEffect);
virtual HRESULT __fastcall DragLeave();
virtual HRESULT __fastcall Drop(const _di_IDataObject dataObj, System::LongInt grfKeyState, const Winapi::Windows::TPoint &pt, System::LongInt &dwEffect);
__property TDragEnterEvent OnDragEnter = {read=FOnDragEnter, write=FOnDragEnter};
__property TDragOverEvent OnDragOver = {read=FOnDragOver, write=FOnDragOver};
__property System::Classes::TNotifyEvent OnDragLeave = {read=FOnDragLeave, write=FOnDragLeave};
__property TDropEvent OnDrop = {read=FOnDrop, write=FOnDrop};
};
//-- var, const, procedure ---------------------------------------------------
} /* namespace Ucefdraganddropmgr */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_UCEFDRAGANDDROPMGR)
using namespace Ucefdraganddropmgr;
#endif
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // uCEFDragAndDropMgrHPP