20#ifndef INCLUDED_VCL_INC_DNDEVENTDISPATCHER_HXX
21#define INCLUDED_VCL_INC_DNDEVENTDISPATCHER_HXX
23#include <com/sun/star/datatransfer/dnd/XDropTargetListener.hpp>
24#include <com/sun/star/datatransfer/dnd/XDropTargetDragContext.hpp>
26#include <com/sun/star/datatransfer/dnd/XDragGestureListener.hpp>
32 css::datatransfer::dnd::XDropTargetListener,
33 css::datatransfer::dnd::XDropTargetDragContext,
34 css::datatransfer::dnd::XDragGestureListener >
51 static sal_Int32
fireDragEnterEvent(
vcl::Window *pWindow,
const css::uno::Reference< css::datatransfer::dnd::XDropTargetDragContext >& xContext,
53 const css::uno::Sequence< css::datatransfer::DataFlavor >& aFlavorList );
56 static sal_Int32
fireDragOverEvent(
vcl::Window *pWindow,
const css::uno::Reference< css::datatransfer::dnd::XDropTargetDragContext >& xContext,
67 static sal_Int32
fireDropEvent(
vcl::Window *pWindow,
const css::uno::Reference< css::datatransfer::dnd::XDropTargetDropContext >& xContext,
69 const css::uno::Reference< css::datatransfer::XTransferable >& xTransferable );
73 const css::uno::Any& event,
const Point& rOrigin,
const sal_Int8 nDragAction );
91 virtual void SAL_CALL
drop(
const css::datatransfer::dnd::DropTargetDropEvent& dtde )
override;
92 virtual void SAL_CALL
dragEnter(
const css::datatransfer::dnd::DropTargetDragEnterEvent& dtdee )
override;
93 virtual void SAL_CALL
dragExit(
const css::datatransfer::dnd::DropTargetEvent& dte )
override;
94 virtual void SAL_CALL
dragOver(
const css::datatransfer::dnd::DropTargetDragEvent& dtde )
override;
95 virtual void SAL_CALL
dropActionChanged(
const css::datatransfer::dnd::DropTargetDragEvent& dtde )
override;
101 virtual void SAL_CALL
dragGestureRecognized(
const css::datatransfer::dnd::DragGestureEvent& dge )
override;
107 virtual void SAL_CALL
disposing(
const css::lang::EventObject& eo )
override;
virtual void SAL_CALL drop(const css::datatransfer::dnd::DropTargetDropEvent &dtde) override
static sal_Int32 fireDragGestureEvent(vcl::Window *pWindow, const css::uno::Reference< css::datatransfer::dnd::XDragSource > &xSource, const css::uno::Any &event, const Point &rOrigin, const sal_Int8 nDragAction)
virtual void SAL_CALL dragGestureRecognized(const css::datatransfer::dnd::DragGestureEvent &dge) override
virtual void SAL_CALL disposing(const css::lang::EventObject &eo) override
static sal_Int32 fireDragOverEvent(vcl::Window *pWindow, const css::uno::Reference< css::datatransfer::dnd::XDropTargetDragContext > &xContext, const sal_Int8 nDropAction, const Point &rLocation, const sal_Int8 nSourceAction)
static sal_Int32 fireDropActionChangedEvent(vcl::Window *pWindow, const css::uno::Reference< css::datatransfer::dnd::XDropTargetDragContext > &xContext, const sal_Int8 nDropAction, const Point &rLocation, const sal_Int8 nSourceAction)
void designate_currentwindow(vcl::Window *pWindow)
virtual void SAL_CALL dropActionChanged(const css::datatransfer::dnd::DropTargetDragEvent &dtde) override
virtual void SAL_CALL acceptDrag(sal_Int8 dropAction) override
static sal_Int32 fireDropEvent(vcl::Window *pWindow, const css::uno::Reference< css::datatransfer::dnd::XDropTargetDropContext > &xContext, const sal_Int8 nDropAction, const Point &rLocation, const sal_Int8 nSourceAction, const css::uno::Reference< css::datatransfer::XTransferable > &xTransferable)
VclPtr< vcl::Window > m_pTopWindow
static sal_Int32 fireDragExitEvent(vcl::Window *pWindow)
VclPtr< vcl::Window > m_pCurrentWindow
DECL_LINK(WindowEventListener, VclWindowEvent &, void)
static sal_Int32 fireDragEnterEvent(vcl::Window *pWindow, const css::uno::Reference< css::datatransfer::dnd::XDropTargetDragContext > &xContext, const sal_Int8 nDropAction, const Point &rLocation, const sal_Int8 nSourceAction, const css::uno::Sequence< css::datatransfer::DataFlavor > &aFlavorList)
virtual void SAL_CALL rejectDrag() override
css::uno::Sequence< css::datatransfer::DataFlavor > m_aDataFlavorList
vcl::Window * findTopLevelWindow(Point &location)
virtual void SAL_CALL dragExit(const css::datatransfer::dnd::DropTargetEvent &dte) override
virtual ~DNDEventDispatcher() override
virtual void SAL_CALL dragOver(const css::datatransfer::dnd::DropTargetDragEvent &dtde) override
DNDEventDispatcher(vcl::Window *pTopWindow)
std::recursive_mutex m_aMutex
virtual void SAL_CALL dragEnter(const css::datatransfer::dnd::DropTargetDragEnterEvent &dtdee) override