Doc: Let SQL Drill Down example show correct use of qgraphicsitem_cast
For qgraphicsitem_cast to work correctly with custom items, one must reimplement the type() function for each custom QGraphicsItem subclass. Do that in the example code. Fixes: QTBUG-7357 Change-Id: Ibf221817908355f0347cddfc46747b6955958f5f Reviewed-by: Andy Shaw <andy.shaw@qt.io>
This commit is contained in:
parent
c3ae30085e
commit
a2446c0eed
@ -437,6 +437,9 @@
|
||||
|
||||
\snippet drilldown/imageitem.h 0
|
||||
|
||||
We declare a \c Type enum value for our custom item and reimplement
|
||||
\l{QGreaphicsItem::}{type()}. This is done so we can safely use
|
||||
qgraphicsitem_cast().
|
||||
In addition, we implement a public \c id() function to be able to
|
||||
identify the associated location and a public \c adjust() function
|
||||
that can be called to ensure that the image item is given the
|
||||
|
@ -60,8 +60,11 @@ class ImageItem : public QObject, public QGraphicsPixmapItem
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
enum { Type = UserType + 1 };
|
||||
|
||||
ImageItem(int id, const QPixmap &pixmap, QGraphicsItem *parent = nullptr);
|
||||
|
||||
int type() const override { return Type; }
|
||||
void adjust();
|
||||
int id() const;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user