22#include <com/sun/star/datatransfer/dnd/XDragSource.hpp>
23#include <com/sun/star/datatransfer/dnd/XDragSourceContext.hpp>
24#include <com/sun/star/lang/XInitialization.hpp>
25#include <osl/mutex.hxx>
28#include <com/sun/star/lang/XServiceInfo.hpp>
31#include <systools/win32/comtools.hxx>
47 public WeakComponentImplHelper<XDragSource, XInitialization, XServiceInfo>,
60 const DragGestureEvent& trigger,
64 const Reference<XTransferable >& trans,
65 const Reference<XDragSourceListener >& listener);
83 explicit DragSource(
const Reference<XComponentContext>& rxContext);
89 virtual void SAL_CALL
initialize(
const Sequence< Any >& aArguments )
override;
94 virtual void SAL_CALL
startDrag(
const DragGestureEvent& trigger,
98 const Reference<XTransferable >& trans,
99 const Reference<XDragSourceListener >& listener )
override;
108 void __RPC_FAR *__RPC_FAR *ppvObject)
override;
110 virtual ULONG STDMETHODCALLTYPE
AddRef( )
override;
112 virtual ULONG STDMETHODCALLTYPE
Release( )
override;
117 DWORD grfKeyState)
override;
120 DWORD dwEffect)
override;
Reference< XDragSourceContext > m_currentContext
virtual Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
void StartDragImpl(const DragGestureEvent &trigger, sal_Int8 sourceActions, sal_Int32 cursor, sal_Int32 image, const Reference< XTransferable > &trans, const Reference< XDragSourceListener > &listener)
virtual void SAL_CALL initialize(const Sequence< Any > &aArguments) override
LONG m_RunningDndOperationCount
Reference< XComponentContext > m_xContext
DragSource(const DragSource &)=delete
DragSource(const Reference< XComponentContext > &rxContext)
virtual sal_Bool SAL_CALL isDragImageSupported() override
DragSource & operator=(const DragSource &)=delete
virtual sal_Int32 SAL_CALL getDefaultCursor(sal_Int8 dragAction) override
virtual ULONG STDMETHODCALLTYPE AddRef() override
virtual HRESULT STDMETHODCALLTYPE GiveFeedback(DWORD dwEffect) override
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void __RPC_FAR *__RPC_FAR *ppvObject) override
virtual void SAL_CALL startDrag(const DragGestureEvent &trigger, sal_Int8 sourceActions, sal_Int32 cursor, sal_Int32 image, const Reference< XTransferable > &trans, const Reference< XDragSourceListener > &listener) override
virtual ~DragSource() override
virtual HRESULT STDMETHODCALLTYPE QueryContinueDrag(BOOL fEscapePressed, DWORD grfKeyState) override
virtual OUString SAL_CALL getImplementationName() override
virtual ULONG STDMETHODCALLTYPE Release() override
IDataObjectPtr m_spDataObject
const wchar_t *typedef BOOL