"""
PySide stub files generated by **IceSpringPySideStubs**

Home: https://baijifeilong.github.io/2022/01/06/ice-spring-pyside-stubs/index.html

Github: https://github.com/baijifeilong/IceSpringPySideStubs

PyPI(PySide2): https://pypi.org/project/IceSpringPySideStubs-PySide2

PyPI(PySide6): https://pypi.org/project/IceSpringPySideStubs-PySide6

PyPI(PyQt5): https://pypi.org/project/IceSpringPySideStubs-PyQt5

PyPI(PyQt6): https://pypi.org/project/IceSpringPySideStubs-PyQt6

Generated by BaiJiFeiLong@gmail.com

License: MIT
"""
import typing
from PyQt6.QtGui import *


class QPointerEvent(QInputEvent):
    """
    https://doc.qt.io/qt-6/qpointerevent.html

    **Detailed Description**
    """

    def clone(self) -> "QPointerEvent":
        ...

    def setAccepted(self, accepted: bool) -> None:
        """
        https://doc.qt.io/qt-6/qpointerevent.html#setAccepted

        **[override virtual] void QPointerEvent::setAccepted(bool accepted )**
        """
        ...

    def allPointsAccepted(self) -> bool:
        """
        https://doc.qt.io/qt-6/qpointerevent.html#allPointsAccepted

        **bool QPointerEvent::allPointsAccepted() const**

        Returns `true` if isPointAccepted() is `true` for every point in
        **points** (); otherwise `false`.
        """
        ...

    def isEndEvent(self) -> bool:
        ...

    def isUpdateEvent(self) -> bool:
        ...

    def isBeginEvent(self) -> bool:
        ...

    def pointById(self, id: int) -> "QEventPoint":
        """
        https://doc.qt.io/qt-6/qpointerevent.html#pointById

        **QEventPoint *QPointerEvent::pointById(int id )**

        Returns the point whose **id**  matches the given **id** , or `nullptr`
        if no such point is found.
        """
        ...

    def points(self) -> typing.List["QEventPoint"]:
        """
        https://doc.qt.io/qt-6/qpointerevent.html#points

        **const QList<QEventPoint> &QPointerEvent::points() const**

        Returns a list of points in this pointer event.
        """
        ...

    def point(self, i: int) -> "QEventPoint":
        """
        https://doc.qt.io/qt-6/qpointerevent.html#point

        **QEventPoint &QPointerEvent::point(qsizetype i )**

        Returns a **QEventPoint**  reference for the point at index **i**.
        """
        ...

    def pointCount(self) -> int:
        """
        https://doc.qt.io/qt-6/qpointerevent.html#pointCount

        **qsizetype QPointerEvent::pointCount() const**

        Returns the number of points in this pointer event.
        """
        ...

    def pointerType(self) -> "QPointingDevice.PointerType":
        """
        https://doc.qt.io/qt-6/qpointerevent.html#pointerType

        **QPointingDevice::PointerType QPointerEvent::pointerType() const**

        Returns the type of point that generated the event.
        """
        ...

    def pointingDevice(self) -> "QPointingDevice":
        """
        https://doc.qt.io/qt-6/qpointerevent.html#pointingDevice

        **const QPointingDevice *QPointerEvent::pointingDevice() const**

        Returns the source device from which this event originates.

        This is the same as **QInputEvent::device** () but typecast for
        convenience.
        """
        ...
