38 QRect
rect = geometry();
42 QPainterPath rectAroundButton;
43 rectAroundButton.addRoundedRect(
rect, 3, 3);
45 if (isCheckable() && isChecked()) {
48 QColor color = brush.color();
50 brush.setColor(color);
51 painter.setBrush(brush);
52 painter.setPen(Qt::NoPen);
53 painter.drawPath(rectAroundButton);
57 if (!isCheckable() && isDown()) {
62 painter.drawPath(rectAroundButton);
67#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
68 icon().paint(&painter,
rect.marginsRemoved(QMargins(padding, padding, padding, padding)));
71 QRect
target = QRect(QPoint(0, 0), ic.deviceIndependentSize().toSize());
73 painter.drawImage(
target.intersected(
rect.marginsRemoved(QMargins(padding, padding, padding, padding))), ic);
89 if (e->type() == QEvent::TabletPress) {
90 QMouseEvent mouseEvent(QEvent::MouseButtonPress,
96 QAbstractButton::mousePressEvent(&mouseEvent);
98 }
else if (e->type() == QEvent::TabletRelease) {
99 QMouseEvent mouseEvent(QEvent::MouseButtonRelease,
105 QAbstractButton::mouseReleaseEvent(&mouseEvent);