Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qwindowsdrag.cpp File Reference
#include <QtCore/qt_windows.h>
#include "qwindowsdrag.h"
#include "qwindowscontext.h"
#include "qwindowsscreen.h"
#include "qwindowsintegration.h"
#include "qwindowsdropdataobject.h"
#include "qwindowswindow.h"
#include "qwindowsmousehandler.h"
#include "qwindowscursor.h"
#include "qwindowskeymapper.h"
#include <QtGui/qevent.h>
#include <QtGui/qpixmap.h>
#include <QtGui/qpainter.h>
#include <QtGui/qrasterwindow.h>
#include <QtGui/qguiapplication.h>
#include <qpa/qwindowsysteminterface_p.h>
#include <QtGui/private/qdnd_p.h>
#include <QtGui/private/qguiapplication_p.h>
#include <QtGui/private/qhighdpiscaling_p.h>
#include <QtCore/qdebug.h>
#include <QtCore/qbuffer.h>
#include <QtCore/qpoint.h>
#include <shlobj.h>
+ Include dependency graph for qwindowsdrag.cpp:

Go to the source code of this file.

Classes

class  QWindowsDragCursorWindow
 A toplevel window showing the drag icon in case of touch drag. More...
 
class  QWindowsOleDropSource
 Implementation of IDropSource. More...
 

Macros

#define KEY_STATE_BUTTON_MASK   (MK_LBUTTON | MK_MBUTTON | MK_RBUTTON)
 

Functions

static Qt::DropActions translateToQDragDropActions (DWORD pdwEffects)
 
static Qt::DropAction translateToQDragDropAction (DWORD pdwEffect)
 
static DWORD translateToWinDragEffects (Qt::DropActions action)
 
static Qt::KeyboardModifiers toQtKeyboardModifiers (DWORD keyState)
 
QDebug operator<< (QDebug d, const QWindowsOleDropSource::CursorEntry &e)
 
static HRESULT startDoDragDrop (LPDATAOBJECT pDataObj, LPDROPSOURCE pDropSource, DWORD dwOKEffects, LPDWORD pdwEffect)
 

Variables

static Qt::KeyboardModifiers lastModifiers = Qt::NoModifier
 
static Qt::MouseButtons lastButtons = Qt::NoButton
 

Macro Definition Documentation

◆ KEY_STATE_BUTTON_MASK

#define KEY_STATE_BUTTON_MASK   (MK_LBUTTON | MK_MBUTTON | MK_RBUTTON)

Definition at line 542 of file qwindowsdrag.cpp.

Function Documentation

◆ operator<<()

QDebug operator<< ( QDebug  d,
const QWindowsOleDropSource::CursorEntry &  e 
)

Definition at line 231 of file qwindowsdrag.cpp.

◆ startDoDragDrop()

static HRESULT startDoDragDrop ( LPDATAOBJECT  pDataObj,
LPDROPSOURCE  pDropSource,
DWORD  dwOKEffects,
LPDWORD  pdwEffect 
)
static

Definition at line 649 of file qwindowsdrag.cpp.

References GetFocus(), QWindowsContext::instance(), qWindowsWndProc(), QWindowsContext::windowUnderMouse(), WM_POINTERLEAVE, and WM_POINTERUPDATE.

Referenced by QWindowsDrag::drag().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toQtKeyboardModifiers()

static Qt::KeyboardModifiers toQtKeyboardModifiers ( DWORD  keyState)
inlinestatic

◆ translateToQDragDropAction()

static Qt::DropAction translateToQDragDropAction ( DWORD  pdwEffect)
inlinestatic

Definition at line 120 of file qwindowsdrag.cpp.

References Qt::CopyAction, Qt::IgnoreAction, Qt::LinkAction, and Qt::MoveAction.

Referenced by QWindowsDrag::drag(), and QWindowsOleDropSource::GiveFeedback().

+ Here is the caller graph for this function:

◆ translateToQDragDropActions()

static Qt::DropActions translateToQDragDropActions ( DWORD  pdwEffects)
inlinestatic

Definition at line 108 of file qwindowsdrag.cpp.

References Qt::CopyAction, Qt::IgnoreAction, Qt::LinkAction, and Qt::MoveAction.

◆ translateToWinDragEffects()

static DWORD translateToWinDragEffects ( Qt::DropActions  action)
inlinestatic

Definition at line 131 of file qwindowsdrag.cpp.

References Qt::CopyAction, effect, Qt::LinkAction, and Qt::MoveAction.

Referenced by QWindowsDrag::drag().

+ Here is the caller graph for this function:

Variable Documentation

◆ lastButtons

Qt::MouseButtons lastButtons = Qt::NoButton
static

◆ lastModifiers

Qt::KeyboardModifiers lastModifiers = Qt::NoModifier
static

Definition at line 157 of file qwindowsdrag.cpp.

Referenced by QWindowsOleDropTarget::DragLeave().