QGIS API Documentation  2.7.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsAnnotationItem Class Referenceabstract

An annotation item can be either placed either on screen corrdinates or on map coordinates. More...

#include <qgsannotationitem.h>

Inheritance diagram for QgsAnnotationItem:
Inheritance graph
[legend]

Public Types

enum  MouseMoveAction {
  NoAction, MoveMapPosition, MoveFramePosition, ResizeFrameUp,
  ResizeFrameDown, ResizeFrameLeft, ResizeFrameRight, ResizeFrameLeftUp,
  ResizeFrameRightUp, ResizeFrameLeftDown, ResizeFrameRightDown
}
 

Public Member Functions

 QgsAnnotationItem (QgsMapCanvas *mapCanvas)
 
virtual ~QgsAnnotationItem ()
 
void _readXML (const QDomDocument &doc, const QDomElement &annotationElem)
 
void _writeXML (QDomDocument &doc, QDomElement &itemElem) const
 
QRectF boundingRect () const
 default implementation for canvas items More...
 
Qt::CursorShape cursorShapeForAction (MouseMoveAction moveAction) const
 Returns suitable cursor shape for mouse move action. More...
 
QColor frameBackgroundColor () const
 
double frameBorderWidth () const
 
QColor frameColor () const
 
QSizeF frameSize () const
 
QgsPoint mapPosition () const
 
bool mapPositionFixed () const
 
const QgsMarkerSymbolV2markerSymbol () const
 
virtual QSizeF minimumFrameSize () const
 
QgsAnnotationItem::MouseMoveAction moveActionForPosition (const QPointF &pos) const
 Returns the mouse move behaviour for a given position. More...
 
QPointF offsetFromReferencePoint () const
 
virtual void readXML (const QDomDocument &doc, const QDomElement &itemElem)=0
 
void setFrameBackgroundColor (const QColor &c)
 
void setFrameBorderWidth (double w)
 
void setFrameColor (const QColor &c)
 
void setFrameSize (const QSizeF &size)
 
virtual void setMapPosition (const QgsPoint &pos)
 
void setMapPositionFixed (bool fixed)
 
void setMarkerSymbol (QgsMarkerSymbolV2 *symbol)
 Set symbol that is drawn on map position. More...
 
void setOffsetFromReferencePoint (const QPointF &offset)
 
void updatePosition ()
 called on changed extent or resize event to update position of the item More...
 
virtual void writeXML (QDomDocument &doc) const =0
 
- Public Member Functions inherited from QgsMapCanvasItem
QgsRectangle rect () const
 returns canvas item rectangle More...
 
Q_DECL_DEPRECATED void setPanningOffset (const QPoint &point)
 sets current offset, to be called from QgsMapCanvas More...
 
void setRect (const QgsRectangle &r)
 sets canvas item rectangle More...
 
QPointF toCanvasCoordinates (const QgsPoint &point)
 transformation from map coordinates to screen coordinates More...
 
QgsPoint toMapCoordinates (const QPoint &point)
 transformation from screen coordinates to map coordinates More...
 

Protected Member Functions

void drawFrame (QPainter *p)
 
void drawMarkerSymbol (QPainter *p)
 
void drawSelectionBoxes (QPainter *p)
 
QPointF pointOnLineWithDistance (const QPointF &startPoint, const QPointF &directionPoint, double distance) const
 Returns a point on the line from startPoint to directionPoint that is a certain distance away from the starting point. More...
 
double scaledSymbolSize () const
 Returns the symbol size scaled in (mapcanvas) pixels. More...
 
QLineF segment (int index)
 Returns frame width in painter units. More...
 
void updateBalloon ()
 Check where to attach the balloon connection between frame and map point. More...
 
void updateBoundingRect ()
 
- Protected Member Functions inherited from QgsMapCanvasItem
 QgsMapCanvasItem (QgsMapCanvas *mapCanvas)
 protected constructor: cannot be constructed directly More...
 
virtual ~QgsMapCanvasItem ()
 
virtual void paint (QPainter *painter)=0
 function to be implemented by derived classes More...
 
virtual void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
 paint function called by map canvas More...
 
bool setRenderContextVariables (QPainter *p, QgsRenderContext &context) const
 Sets render context parameters. More...
 
void updateCanvas ()
 schedules map canvas for repaint More...
 

Protected Attributes

int mBalloonSegment
 Segment number where the connection to the map point is attached. More...
 
QPointF mBalloonSegmentPoint1
 First segment point for drawing the connection (ccw direction) More...
 
QPointF mBalloonSegmentPoint2
 Second segment point for drawing the balloon connection (ccw direction) More...
 
QRectF mBoundingRect
 Bounding rect (including item frame and balloon) More...
 
QColor mFrameBackgroundColor
 
double mFrameBorderWidth
 Width of the frame. More...
 
QColor mFrameColor
 Frame / balloon color. More...
 
QSizeF mFrameSize
 Size of the frame (without balloon) More...
 
QgsPoint mMapPosition
 Map position (in case mMapPositionFixed is true) More...
 
bool mMapPositionFixed
 True: the item stays at the same map position, False: the item stays on same screen position. More...
 
QgsMarkerSymbolV2mMarkerSymbol
 Point symbol that is to be drawn at the map reference location. More...
 
QPointF mOffsetFromReferencePoint
 Describes the shift of the item content box to the reference point. More...
 
- Protected Attributes inherited from QgsMapCanvasItem
QSizeF mItemSize
 cached size of the item (to return in boundingRect()) More...
 
QgsMapCanvasmMapCanvas
 pointer to map canvas More...
 
QPoint mPanningOffset
 offset from normal position due current panning operation, used when converting map coordinates to move map canvas items More...
 
QgsRectangle mRect
 canvas item rectangle (in map coordinates) More...
 

Detailed Description

An annotation item can be either placed either on screen corrdinates or on map coordinates.

It may reference a feature and displays that associatiation with a balloon like appearance

Definition at line 31 of file qgsannotationitem.h.

Member Enumeration Documentation

Enumerator
NoAction 
MoveMapPosition 
MoveFramePosition 
ResizeFrameUp 
ResizeFrameDown 
ResizeFrameLeft 
ResizeFrameRight 
ResizeFrameLeftUp 
ResizeFrameRightUp 
ResizeFrameLeftDown 
ResizeFrameRightDown 

Definition at line 34 of file qgsannotationitem.h.

Constructor & Destructor Documentation

QgsAnnotationItem::QgsAnnotationItem ( QgsMapCanvas mapCanvas)

Definition at line 26 of file qgsannotationitem.cpp.

QgsAnnotationItem::~QgsAnnotationItem ( )
virtual

Definition at line 36 of file qgsannotationitem.cpp.

Member Function Documentation

void QgsAnnotationItem::_readXML ( const QDomDocument &  doc,
const QDomElement &  annotationElem 
)

Definition at line 415 of file qgsannotationitem.cpp.

void QgsAnnotationItem::_writeXML ( QDomDocument &  doc,
QDomElement &  itemElem 
) const

Definition at line 381 of file qgsannotationitem.cpp.

QRectF QgsAnnotationItem::boundingRect ( ) const
virtual

default implementation for canvas items

Reimplemented from QgsMapCanvasItem.

Definition at line 92 of file qgsannotationitem.cpp.

Qt::CursorShape QgsAnnotationItem::cursorShapeForAction ( MouseMoveAction  moveAction) const

Returns suitable cursor shape for mouse move action.

Definition at line 339 of file qgsannotationitem.cpp.

void QgsAnnotationItem::drawFrame ( QPainter *  p)
protected

Definition at line 173 of file qgsannotationitem.cpp.

void QgsAnnotationItem::drawMarkerSymbol ( QPainter *  p)
protected

Definition at line 207 of file qgsannotationitem.cpp.

void QgsAnnotationItem::drawSelectionBoxes ( QPainter *  p)
protected

Definition at line 228 of file qgsannotationitem.cpp.

QColor QgsAnnotationItem::frameBackgroundColor ( ) const
inline

Definition at line 88 of file qgsannotationitem.h.

double QgsAnnotationItem::frameBorderWidth ( ) const
inline

Definition at line 82 of file qgsannotationitem.h.

QColor QgsAnnotationItem::frameColor ( ) const
inline

Definition at line 85 of file qgsannotationitem.h.

QSizeF QgsAnnotationItem::frameSize ( ) const
inline

Definition at line 72 of file qgsannotationitem.h.

QgsPoint QgsAnnotationItem::mapPosition ( ) const
inline

Definition at line 69 of file qgsannotationitem.h.

bool QgsAnnotationItem::mapPositionFixed ( ) const
inline

Definition at line 66 of file qgsannotationitem.h.

const QgsMarkerSymbolV2* QgsAnnotationItem::markerSymbol ( ) const
inline

Definition at line 79 of file qgsannotationitem.h.

QSizeF QgsAnnotationItem::minimumFrameSize ( ) const
virtual

Reimplemented in QgsHtmlAnnotationItem, and QgsFormAnnotationItem.

Definition at line 97 of file qgsannotationitem.cpp.

QgsAnnotationItem::MouseMoveAction QgsAnnotationItem::moveActionForPosition ( const QPointF &  pos) const

Returns the mouse move behaviour for a given position.

Parameters
posthe position in scene coordinates

Definition at line 280 of file qgsannotationitem.cpp.

QPointF QgsAnnotationItem::offsetFromReferencePoint ( ) const
inline

Definition at line 75 of file qgsannotationitem.h.

QPointF QgsAnnotationItem::pointOnLineWithDistance ( const QPointF &  startPoint,
const QPointF &  directionPoint,
double  distance 
) const
protected

Returns a point on the line from startPoint to directionPoint that is a certain distance away from the starting point.

Definition at line 271 of file qgsannotationitem.cpp.

virtual void QgsAnnotationItem::readXML ( const QDomDocument &  doc,
const QDomElement &  itemElem 
)
pure virtual
double QgsAnnotationItem::scaledSymbolSize ( ) const
protected

Returns the symbol size scaled in (mapcanvas) pixels.

Used for the counding rect calculation

Definition at line 365 of file qgsannotationitem.cpp.

QLineF QgsAnnotationItem::segment ( int  index)
protected

Returns frame width in painter units.

Gets the frame line (0 is the top line, 1 right, 2 bottom, 3 left)

Definition at line 250 of file qgsannotationitem.cpp.

void QgsAnnotationItem::setFrameBackgroundColor ( const QColor &  c)
inline

Definition at line 87 of file qgsannotationitem.h.

void QgsAnnotationItem::setFrameBorderWidth ( double  w)
inline

Definition at line 81 of file qgsannotationitem.h.

void QgsAnnotationItem::setFrameColor ( const QColor &  c)
inline

Definition at line 84 of file qgsannotationitem.h.

void QgsAnnotationItem::setFrameSize ( const QSizeF &  size)

Definition at line 199 of file qgsannotationitem.cpp.

void QgsAnnotationItem::setMapPosition ( const QgsPoint pos)
virtual

Reimplemented in QgsFormAnnotationItem, and QgsHtmlAnnotationItem.

Definition at line 48 of file qgsannotationitem.cpp.

void QgsAnnotationItem::setMapPositionFixed ( bool  fixed)

Definition at line 61 of file qgsannotationitem.cpp.

void QgsAnnotationItem::setMarkerSymbol ( QgsMarkerSymbolV2 symbol)

Set symbol that is drawn on map position.

Takes ownership

Definition at line 41 of file qgsannotationitem.cpp.

void QgsAnnotationItem::setOffsetFromReferencePoint ( const QPointF &  offset)

Definition at line 54 of file qgsannotationitem.cpp.

void QgsAnnotationItem::updateBalloon ( )
protected

Check where to attach the balloon connection between frame and map point.

Definition at line 118 of file qgsannotationitem.cpp.

void QgsAnnotationItem::updateBoundingRect ( )
protected

Definition at line 102 of file qgsannotationitem.cpp.

void QgsAnnotationItem::updatePosition ( )
virtual

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

Reimplemented from QgsMapCanvasItem.

Definition at line 80 of file qgsannotationitem.cpp.

virtual void QgsAnnotationItem::writeXML ( QDomDocument &  doc) const
pure virtual

Member Data Documentation

int QgsAnnotationItem::mBalloonSegment
protected

Segment number where the connection to the map point is attached.

-1 if no balloon needed (e.g. if point is contained in frame)

Definition at line 118 of file qgsannotationitem.h.

QPointF QgsAnnotationItem::mBalloonSegmentPoint1
protected

First segment point for drawing the connection (ccw direction)

Definition at line 120 of file qgsannotationitem.h.

QPointF QgsAnnotationItem::mBalloonSegmentPoint2
protected

Second segment point for drawing the balloon connection (ccw direction)

Definition at line 122 of file qgsannotationitem.h.

QRectF QgsAnnotationItem::mBoundingRect
protected

Bounding rect (including item frame and balloon)

Definition at line 107 of file qgsannotationitem.h.

QColor QgsAnnotationItem::mFrameBackgroundColor
protected

Definition at line 115 of file qgsannotationitem.h.

double QgsAnnotationItem::mFrameBorderWidth
protected

Width of the frame.

Definition at line 112 of file qgsannotationitem.h.

QColor QgsAnnotationItem::mFrameColor
protected

Frame / balloon color.

Definition at line 114 of file qgsannotationitem.h.

QSizeF QgsAnnotationItem::mFrameSize
protected

Size of the frame (without balloon)

Definition at line 105 of file qgsannotationitem.h.

QgsPoint QgsAnnotationItem::mMapPosition
protected

Map position (in case mMapPositionFixed is true)

Definition at line 100 of file qgsannotationitem.h.

bool QgsAnnotationItem::mMapPositionFixed
protected

True: the item stays at the same map position, False: the item stays on same screen position.

Definition at line 98 of file qgsannotationitem.h.

QgsMarkerSymbolV2* QgsAnnotationItem::mMarkerSymbol
protected

Point symbol that is to be drawn at the map reference location.

Definition at line 110 of file qgsannotationitem.h.

QPointF QgsAnnotationItem::mOffsetFromReferencePoint
protected

Describes the shift of the item content box to the reference point.

Definition at line 102 of file qgsannotationitem.h.


The documentation for this class was generated from the following files: