Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
QWindowsPointerHandler Class Reference

#include <qwindowspointerhandler.h>

+ Collaboration diagram for QWindowsPointerHandler:

Public Types

using QPointingDevicePtr = QSharedPointer< QPointingDevice >
 

Public Member Functions

 QWindowsPointerHandler ()=default
 
 ~QWindowsPointerHandler ()
 
bool translatePointerEvent (QWindow *window, HWND hwnd, QtWindows::WindowsEventType et, MSG msg, LRESULT *result)
 
bool translateMouseEvent (QWindow *window, HWND hwnd, QtWindows::WindowsEventType et, MSG msg, LRESULT *result)
 
const QPointingDevicePtrtouchDevice () const
 
void setTouchDevice (const QPointingDevicePtr &d)
 
QWindowwindowUnderMouse () const
 
void clearWindowUnderMouse ()
 
void clearEvents ()
 

Static Public Member Functions

static QPointingDevicePtr createTouchDevice (bool mouseEmulation)
 

Detailed Description

Definition at line 22 of file qwindowspointerhandler.h.

Member Typedef Documentation

◆ QPointingDevicePtr

Constructor & Destructor Documentation

◆ QWindowsPointerHandler()

QWindowsPointerHandler::QWindowsPointerHandler ( )
default

◆ ~QWindowsPointerHandler()

QWindowsPointerHandler::~QWindowsPointerHandler ( )

Definition at line 42 of file qwindowspointerhandler.cpp.

Member Function Documentation

◆ clearEvents()

void QWindowsPointerHandler::clearEvents ( )

Definition at line 313 of file qwindowspointerhandler.cpp.

References Qt::NoButton, and QEvent::None.

◆ clearWindowUnderMouse()

void QWindowsPointerHandler::clearWindowUnderMouse ( )
inline

Definition at line 38 of file qwindowspointerhandler.h.

Referenced by QWindowsContext::clearWindowUnderMouse().

+ Here is the caller graph for this function:

◆ createTouchDevice()

QWindowsPointerHandler::QPointingDevicePtr QWindowsPointerHandler::createTouchDevice ( bool  mouseEmulation)
static

Definition at line 279 of file qwindowspointerhandler.cpp.

References QInputDevice::Area, d, Qt::dec(), QPointingDevice::Finger, QPointingDeviceUniqueId::fromNumericId(), Qt::hex(), QInputDevice::MouseEmulation, QInputDevice::NormalizedPosition, Qt::noshowbase(), QInputDevice::Position, qCDebug, QInputDevice::Scroll, Qt::showbase(), QInputDevice::TouchPad, and QInputDevice::TouchScreen.

Referenced by QWindowsContext::initTouch().

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

◆ setTouchDevice()

void QWindowsPointerHandler::setTouchDevice ( const QPointingDevicePtr d)
inline

Definition at line 34 of file qwindowspointerhandler.h.

References d.

Referenced by QWindowsContext::initTouch().

+ Here is the caller graph for this function:

◆ touchDevice()

const QPointingDevicePtr & QWindowsPointerHandler::touchDevice ( ) const
inline

Definition at line 33 of file qwindowspointerhandler.h.

Referenced by QWindowsContextPrivate::QWindowsContextPrivate(), and QWindowsContext::initTouch().

+ Here is the caller graph for this function:

◆ translateMouseEvent()

bool QWindowsPointerHandler::translateMouseEvent ( QWindow window,
HWND  hwnd,
QtWindows::WindowsEventType  et,
MSG  msg,
LRESULT *  result 
)

Definition at line 734 of file qwindowspointerhandler.cpp.

References QSharedPointer< T >::data(), device, QWindowsIntegration::DontPassOsMouseEventsSynthesizedFromTouch, eventFromMsg(), QWindowSystemInterface::flushWindowSystemEvents(), getWindowUnderPointer(), QWindowSystemInterface::handleLeaveEvent(), QWindowSystemInterface::handleMouseEvent(), QWindowsIntegration::instance(), isMouseEventSynthesizedFromPenOrTouch(), QPointer< T >::isNull(), QSharedPointer< T >::isNull(), QWindowsBaseWindow::isRtlLayout(), lastMouseMovePos, QWindowsGeometryHint::mapFromGlobal(), QWindowsGeometryHint::mapToGlobal(), QEvent::MouseButtonRelease, mouseButtonsFromKeyState(), Qt::MouseEventNotSynthesized, Qt::MouseEventSynthesizedBySystem, QEvent::MouseMove, QtWindows::MouseWheelEvent, QEvent::NonClientAreaMouseButtonDblClick, QEvent::NonClientAreaMouseButtonPress, QEvent::NonClientAreaMouseButtonRelease, QEvent::NonClientAreaMouseMove, QtWindows::NonClientEventFlag, QEvent::None, QWindowsMouseHandler::primaryMouse(), qCDebug, QT_PT_PEN, QT_PT_TOUCH, QWindowsKeyMapper::queryKeyboardModifiers(), queryMouseButtons(), QPoint::setX(), Event::type, window(), and QPoint::x().

Referenced by QWindowsContext::windowsProc().

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

◆ translatePointerEvent()

bool QWindowsPointerHandler::translatePointerEvent ( QWindow window,
HWND  hwnd,
QtWindows::WindowsEventType  et,
MSG  msg,
LRESULT *  result 
)

Definition at line 46 of file qwindowspointerhandler.cpp.

References Qt::AA_CompressHighFrequencyEvents, Qt::AA_CompressTabletEvents, QVarLengthArray< T, Prealloc >::data(), it, qt_error_string(), QT_PT_MOUSE, QT_PT_PEN, QT_PT_POINTER, QT_PT_TOUCH, QT_PT_TOUCHPAD, qWarning, QVarLengthArray< T, Prealloc >::rbegin(), QVarLengthArray< T, Prealloc >::rend(), QVarLengthArray< T, Prealloc >::resize(), QCoreApplication::testAttribute(), and window().

Referenced by QWindowsContext::windowsProc().

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

◆ windowUnderMouse()

QWindow * QWindowsPointerHandler::windowUnderMouse ( ) const
inline

Definition at line 37 of file qwindowspointerhandler.h.

References QPointer< T >::data().

Referenced by QWindowsContext::windowUnderMouse().

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

The documentation for this class was generated from the following files: