Quantum GIS API Documentation  1.7.4
Public Member Functions | Protected Member Functions | Protected Attributes
QgsMapCanvasItem Class Reference

An abstract class for items that can be placed on the map canvas. More...

#include <qgsmapcanvasitem.h>

Inheritance diagram for QgsMapCanvasItem:
Inheritance graph
[legend]
Collaboration diagram for QgsMapCanvasItem:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual void updatePosition ()
 called on changed extent or resize event to update position of the item
virtual QRectF boundingRect () const
 default implementation for canvas items
void setPanningOffset (const QPoint &point)
 sets current offset, to be called from QgsMapCanvas
QgsRectangle rect () const
 returns canvas item rectangle
void setRect (const QgsRectangle &r)
 sets canvas item rectangle
QgsPoint toMapCoordinates (const QPoint &point)
 transformation from screen coordinates to map coordinates
QPointF toCanvasCoordinates (const QgsPoint &point)
 transformation from map coordinates to screen coordinates

Protected Member Functions

 QgsMapCanvasItem (QgsMapCanvas *mapCanvas)
 protected constructor: cannot be constructed directly
virtual ~QgsMapCanvasItem ()
virtual void paint (QPainter *painter)=0
 function to be implemented by derived classes
virtual void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
 paint function called by map canvas
void updateCanvas ()
 schedules map canvas for repaint
bool setRenderContextVariables (QPainter *p, QgsRenderContext &context) const
 Sets render context parameters.

Protected Attributes

QgsMapCanvasmMapCanvas
 pointer to map canvas
QgsRectangle mRect
 canvas item rectangle (in map coordinates)
QPoint mPanningOffset
 offset from normal position due current panning operation, used when converting map coordinates to move map canvas items
QSizeF mItemSize
 cached size of the item (to return in boundingRect())

Detailed Description

An abstract class for items that can be placed on the map canvas.

Definition at line 31 of file qgsmapcanvasitem.h.


Constructor & Destructor Documentation

QgsMapCanvasItem::QgsMapCanvasItem ( QgsMapCanvas mapCanvas) [protected]

protected constructor: cannot be constructed directly

Definition at line 30 of file qgsmapcanvasitem.cpp.

QgsMapCanvasItem::~QgsMapCanvasItem ( ) [protected, virtual]

Definition at line 36 of file qgsmapcanvasitem.cpp.


Member Function Documentation

QRectF QgsMapCanvasItem::boundingRect ( ) const [virtual]

default implementation for canvas items

Reimplemented in QgsVertexMarker, and QgsAnnotationItem.

Definition at line 95 of file qgsmapcanvasitem.cpp.

References mItemSize.

virtual void QgsMapCanvasItem::paint ( QPainter *  painter) [protected, pure virtual]

function to be implemented by derived classes

Implemented in QgsRubberBand, QgsVertexMarker, QgsTextAnnotationItem, and QgsFormAnnotationItem.

Referenced by paint().

void QgsMapCanvasItem::paint ( QPainter *  painter,
const QStyleOptionGraphicsItem *  option,
QWidget *  widget = 0 
) [protected, virtual]

paint function called by map canvas

Reimplemented in QgsFormAnnotationItem.

Definition at line 41 of file qgsmapcanvasitem.cpp.

References QgsMapCanvas::antiAliasingEnabled(), mMapCanvas, and paint().

returns canvas item rectangle

Definition at line 66 of file qgsmapcanvasitem.cpp.

References mRect.

Referenced by setRect().

void QgsMapCanvasItem::setPanningOffset ( const QPoint &  point)

sets current offset, to be called from QgsMapCanvas

Definition at line 153 of file qgsmapcanvasitem.cpp.

References mPanningOffset.

Referenced by QgsMapCanvas::moveCanvasContents().

bool QgsMapCanvasItem::setRenderContextVariables ( QPainter *  p,
QgsRenderContext context 
) const [protected]

Sets render context parameters.

Parameters:
ppainter for rendering
contextout: configured context
Returns:
true in case of success
Note:
added in version 1.5

Definition at line 108 of file qgsmapcanvasitem.cpp.

References QgsMapCanvas::mapRenderer(), QgsMapRenderer::Millimeters, mMapCanvas, QgsMapRenderer::outputDpi(), QgsMapRenderer::outputUnits(), QgsMapCanvas::scale(), QgsRenderContext::setPainter(), QgsRenderContext::setRasterScaleFactor(), QgsRenderContext::setRendererScale(), and QgsRenderContext::setScaleFactor().

Referenced by QgsAnnotationItem::drawMarkerSymbol().

QPointF QgsMapCanvasItem::toCanvasCoordinates ( const QgsPoint point)
QgsPoint QgsMapCanvasItem::toMapCoordinates ( const QPoint &  point)

transformation from screen coordinates to map coordinates

Definition at line 52 of file qgsmapcanvasitem.cpp.

References QgsMapCanvas::getCoordinateTransform(), mMapCanvas, mPanningOffset, and QgsMapToPixel::toMapCoordinates().

Referenced by QgsAnnotationItem::setMapPositionFixed(), and QgsAnnotationItem::updatePosition().

void QgsMapCanvasItem::updateCanvas ( ) [protected]

schedules map canvas for repaint

Definition at line 101 of file qgsmapcanvasitem.cpp.

called on changed extent or resize event to update position of the item

Reimplemented in QgsVertexMarker, and QgsAnnotationItem.

Definition at line 146 of file qgsmapcanvasitem.cpp.

References mRect, and setRect().

Referenced by QgsMapCanvas::updateCanvasItemPositions().


Member Data Documentation

QSizeF QgsMapCanvasItem::mItemSize [protected]

cached size of the item (to return in boundingRect())

Definition at line 95 of file qgsmapcanvasitem.h.

Referenced by boundingRect(), and setRect().

offset from normal position due current panning operation, used when converting map coordinates to move map canvas items

Definition at line 92 of file qgsmapcanvasitem.h.

Referenced by setPanningOffset(), toCanvasCoordinates(), and toMapCoordinates().

canvas item rectangle (in map coordinates)

Definition at line 88 of file qgsmapcanvasitem.h.

Referenced by rect(), setRect(), and updatePosition().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines