11#include <qapplication.h>
14#include <qpainterpath.h>
20 : QAbstractButton(parent)
23 setFixedSize(size, size);
25 setCursor(Qt::PointingHandCursor);
27 setAttribute(Qt::WA_AcceptTouchEvents);
38 QRect
rect = geometry();
42 path.addRoundedRect(
rect, 3, 3);
47 painter.drawPath(path) ;
52#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
53 QRect
target = QRect(QPoint(0, 0), ic.size()/ic.devicePixelRatioF());
55 QRect
target = QRect(QPoint(0, 0), ic.deviceIndependentSize().toSize());
58 painter.drawImage(
target.intersected(
rect.marginsRemoved(QMargins(padding, padding, padding, padding))), ic);
72 if (e->type() == QEvent::TabletPress) {
73 QMouseEvent mouseEvent(QEvent::MouseButtonPress,
79 QAbstractButton::mousePressEvent(&mouseEvent);
81 }
else if (e->type() == QEvent::TabletRelease) {
82 QMouseEvent mouseEvent(QEvent::MouseButtonRelease,
88 QAbstractButton::mouseReleaseEvent(&mouseEvent);
96 if (e->type() == QEvent::TouchBegin) {
97 QTouchEvent *touchEvent =
static_cast<QTouchEvent *
>(e);
98#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
99 int pointsCount = touchEvent->points().count();
101 int pointsCount = touchEvent->touchPoints().count();
103 if (pointsCount == 1) {
104 this->animateClick();
109 return QAbstractButton::event(e);
114 Q_EMIT customContextMenuRequested(mapToGlobal(
event->pos()));
121 if (
event->button() == Qt::RightButton) {
124 QAbstractButton::mousePressEvent(
event);
KisMagneticGraph::vertex_descriptor target(typename KisMagneticGraph::edge_descriptor e, KisMagneticGraph g)
static constexpr char ENABLED_PROPERTY[]
virtual QImage convertImageToDisplayColorSpace(const QImage source) const =0
convertImageToDisplayColorSpace
virtual QPalette systemPaletteForDisplayColorSpace() const =0
systemPaletteForDisplayColorSpace
QIcon loadIcon(const QString &name)