summaryrefslogtreecommitdiffstats
path: root/src/gui/graphicsview/qgraphicsitem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/graphicsview/qgraphicsitem.cpp')
-rw-r--r--src/gui/graphicsview/qgraphicsitem.cpp39
1 files changed, 21 insertions, 18 deletions
diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp
index 822c208..b7c2e26 100644
--- a/src/gui/graphicsview/qgraphicsitem.cpp
+++ b/src/gui/graphicsview/qgraphicsitem.cpp
@@ -198,20 +198,19 @@
\o hoverEnterEvent(), hoverMoveEvent(), and hoverLeaveEvent() handles
hover enter, move and leave events
\o inputMethodEvent() handles input events, for accessibility support
- \o keyPressEvent() and keyReleaseEvent handle key press and release events
+ \o keyPressEvent() and keyReleaseEvent() handle key press and release events
\o mousePressEvent(), mouseMoveEvent(), mouseReleaseEvent(), and
mouseDoubleClickEvent() handles mouse press, move, release, click and
doubleclick events
\endlist
- You can filter events for any other item by installing event
- filters. This functionaly is separate from from Qt's regular
- event filters (see QObject::installEventFilter()), which only
- work on subclasses of QObject. After installing your item as an
- event filter for another item by calling
- installSceneEventFilter(), the filtered events will be received
- by the virtual function sceneEventFilter(). You can remove item
- event filters by calling removeSceneEventFilter().
+ You can filter events for any other item by installing event filters. This
+ functionality is separate from Qt's regular event filters (see
+ QObject::installEventFilter()), which only work on subclasses of QObject. After
+ installing your item as an event filter for another item by calling
+ installSceneEventFilter(), the filtered events will be received by the virtual
+ function sceneEventFilter(). You can remove item event filters by calling
+ removeSceneEventFilter().
\section1 Custom Data
@@ -414,11 +413,11 @@
(same as transform()), and QGraphicsItem ignores the return value for this
notification (i.e., a read-only notification).
- \value ItemSelectedChange The item's selected state changes. If the item
- is presently selected, it will become unselected, and vice verca. The
- value argument is the new selected state (i.e., true or false). Do not
- call setSelected() in itemChange() as this notification is delivered();
- instead, you can return the new selected state from itemChange().
+ \value ItemSelectedChange The item's selected state changes. If the item is
+ presently selected, it will become unselected, and vice verca. The value
+ argument is the new selected state (i.e., true or false). Do not call
+ setSelected() in itemChange() as this notification is delivered; instead, you
+ can return the new selected state from itemChange().
\value ItemSelectedHasChanged The item's selected state has changed. The
value argument is the new selected state (i.e., true or false). Do not
@@ -10358,10 +10357,14 @@ QPixmap QGraphicsItemEffectSourcePrivate::pixmap(Qt::CoordinateSystem system, QP
effectRect.setY(0);
}
// NB! We use +-1 for historical reasons (see QRect documentation).
- if (right + 1 > info->widget->width())
- effectRect.setRight(info->widget->width() - 1);
- if (bottom + 1 > info->widget->height())
- effectRect.setBottom(info->widget->height() -1);
+ QPaintDevice *device = info->painter->device();
+ const int deviceWidth = device->width();
+ const int deviceHeight = device->height();
+ if (right + 1 > deviceWidth)
+ effectRect.setRight(deviceWidth - 1);
+ if (bottom + 1 > deviceHeight)
+ effectRect.setBottom(deviceHeight -1);
+
}
if (effectRect.isEmpty())