class QgsMapCanvasItem : QGraphicsItem { %TypeHeaderCode #include %End protected: //! protected constructor: cannot be constructed directly QgsMapCanvasItem(QgsMapCanvas* mapCanvas /TransferThis/); virtual ~QgsMapCanvasItem(); //! function to be implemented by derived classes virtual void paint(QPainter * painter) = 0; //! paint function called by map canvas virtual void paint(QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0); //! schedules map canvas for repaint void updateCanvas(); public: //! called on changed extent or resize event to update position of the item virtual void updatePosition(); //! default implementation for canvas items virtual QRectF boundingRect() const; //! sets current offset, to be called from QgsMapCanvas void setPanningOffset(const QPoint& point); //! returns canvas item rectangle QgsRectangle rect() const; //! sets canvas item rectangle void setRect(const QgsRectangle& r); //! transformation from screen coordinates to map coordinates QgsPoint toMapCoordinates(const QPoint& point); //! transformation from map coordinates to screen coordinates QPointF toCanvasCoordinates(const QgsPoint& point); };