|
QGIS API Documentation
2.0.1-Dufour
|
An annotation item that embedds a designer form showing the feature attribute. More...
#include <qgsformannotationitem.h>


Public Member Functions | |
| QgsFormAnnotationItem (QgsMapCanvas *canvas, QgsVectorLayer *vlayer=0, bool hasFeature=false, int feature=0) | |
| ~QgsFormAnnotationItem () | |
| void | paint (QPainter *painter) |
| function to be implemented by derived classes | |
| void | paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0) |
| paint function called by map canvas | |
| QSizeF | minimumFrameSize () const |
| QSizeF | preferredFrameSize () const |
| Returns the optimal frame size. | |
| void | setMapPosition (const QgsPoint &pos) |
| Reimplemented from QgsAnnotationItem. | |
| void | setDesignerForm (const QString &uiFile) |
| QString | designerForm () const |
| void | writeXML (QDomDocument &doc) const |
| void | readXML (const QDomDocument &doc, const QDomElement &itemElem) |
| QgsVectorLayer * | vectorLayer () const |
Public Member Functions inherited from QgsAnnotationItem | |
| QgsAnnotationItem (QgsMapCanvas *mapCanvas) | |
| virtual | ~QgsAnnotationItem () |
| void | updatePosition () |
| called on changed extent or resize event to update position of the item | |
| QRectF | boundingRect () const |
| default implementation for canvas items | |
| QgsAnnotationItem::MouseMoveAction | moveActionForPosition (const QPointF &pos) const |
| Returns the mouse move behaviour for a given position. | |
| Qt::CursorShape | cursorShapeForAction (MouseMoveAction moveAction) const |
| Returns suitable cursor shape for mouse move action. | |
| void | setMapPositionFixed (bool fixed) |
| bool | mapPositionFixed () const |
| QgsPoint | mapPosition () const |
| void | setFrameSize (const QSizeF &size) |
| QSizeF | frameSize () const |
| void | setOffsetFromReferencePoint (const QPointF &offset) |
| QPointF | offsetFromReferencePoint () const |
| void | setMarkerSymbol (QgsMarkerSymbolV2 *symbol) |
| Set symbol that is drawn on map position. | |
| const QgsMarkerSymbolV2 * | markerSymbol () const |
| void | setFrameBorderWidth (double w) |
| double | frameBorderWidth () const |
| void | setFrameColor (const QColor &c) |
| QColor | frameColor () const |
| void | setFrameBackgroundColor (const QColor &c) |
| QColor | frameBackgroundColor () const |
| void | _writeXML (QDomDocument &doc, QDomElement &itemElem) const |
| void | _readXML (const QDomDocument &doc, const QDomElement &annotationElem) |
Public Member Functions inherited from QgsMapCanvasItem | |
| 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 | |
Private Slots | |
| void | setFeatureForMapPosition () |
| Sets a feature for the current map position and updates the dialog. | |
| void | updateVisibility () |
| Sets visibility status based on mVectorLayer visibility. | |
Private Member Functions | |
| QWidget * | createDesignerWidget (const QString &filePath) |
Private Attributes | |
| QGraphicsProxyWidget * | mWidgetContainer |
| QWidget * | mDesignerWidget |
| QgsVectorLayer * | mVectorLayer |
| Associated vectorlayer (or 0 if attributes are not supposed to be replaced) | |
| bool | mHasAssociatedFeature |
| True if the item is related to a vector feature. | |
| QgsFeatureId | mFeature |
| Associated feature. | |
| QString | mDesignerForm |
| Path to (and including) the .ui file. | |
Additional Inherited Members | |
Public Types inherited from QgsAnnotationItem | |
| enum | MouseMoveAction { NoAction, MoveMapPosition, MoveFramePosition, ResizeFrameUp, ResizeFrameDown, ResizeFrameLeft, ResizeFrameRight, ResizeFrameLeftUp, ResizeFrameRightUp, ResizeFrameLeftDown, ResizeFrameRightDown } |
Protected Member Functions inherited from QgsAnnotationItem | |
| void | updateBoundingRect () |
| void | updateBalloon () |
| Check where to attach the balloon connection between frame and map point. | |
| void | drawFrame (QPainter *p) |
| void | drawMarkerSymbol (QPainter *p) |
| void | drawSelectionBoxes (QPainter *p) |
| QLineF | segment (int index) |
| Returns frame width in painter units. | |
| 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. | |
| double | scaledSymbolSize () const |
| Returns the symbol size scaled in (mapcanvas) pixels. | |
Protected Attributes inherited from QgsAnnotationItem | |
| bool | mMapPositionFixed |
| True: the item stays at the same map position, False: the item stays on same screen position. | |
| QgsPoint | mMapPosition |
| Map position (in case mMapPositionFixed is true) | |
| QPointF | mOffsetFromReferencePoint |
| Describes the shift of the item content box to the reference point. | |
| QSizeF | mFrameSize |
| Size of the frame (without balloon) | |
| QRectF | mBoundingRect |
| Bounding rect (including item frame and balloon) | |
| QgsMarkerSymbolV2 * | mMarkerSymbol |
| Point symbol that is to be drawn at the map reference location. | |
| double | mFrameBorderWidth |
| Width of the frame. | |
| QColor | mFrameColor |
| Frame / balloon color. | |
| QColor | mFrameBackgroundColor |
| int | mBalloonSegment |
| Segment number where the connection to the map point is attached. | |
| QPointF | mBalloonSegmentPoint1 |
| First segment point for drawing the connection (ccw direction) | |
| QPointF | mBalloonSegmentPoint2 |
| Second segment point for drawing the balloon connection (ccw direction) | |
An annotation item that embedds a designer form showing the feature attribute.
Definition at line 28 of file qgsformannotationitem.h.
| QgsFormAnnotationItem::QgsFormAnnotationItem | ( | QgsMapCanvas * | canvas, |
| QgsVectorLayer * | vlayer = 0, |
||
| bool | hasFeature = false, |
||
| int | feature = 0 |
||
| ) |
Definition at line 35 of file qgsformannotationitem.cpp.
References QgsVectorLayer::annotationForm(), mDesignerForm, QgsMapCanvasItem::mMapCanvas, mVectorLayer, mWidgetContainer, setFeatureForMapPosition(), and updateVisibility().
| QgsFormAnnotationItem::~QgsFormAnnotationItem | ( | ) |
Definition at line 52 of file qgsformannotationitem.cpp.
References mDesignerWidget.
|
private |
Definition at line 71 of file qgsformannotationitem.cpp.
References QgsFeature::attributes(), QgsFields::count(), QgsAttributeEditor::createAttributeEditor(), file, QgsVectorLayer::getFeatures(), mFeature, mHasAssociatedFeature, mVectorLayer, QgsFeatureIterator::nextFeature(), QgsFeatureRequest::NoGeometry, and QgsVectorLayer::pendingFields().
Referenced by readXML(), setDesignerForm(), and setFeatureForMapPosition().
|
inline |
Definition at line 48 of file qgsformannotationitem.h.
|
virtual |
Reimplemented from QgsAnnotationItem.
Definition at line 145 of file qgsformannotationitem.cpp.
References mDesignerWidget, and QgsAnnotationItem::mFrameBorderWidth.
|
virtual |
function to be implemented by derived classes
Implements QgsMapCanvasItem.
Definition at line 115 of file qgsformannotationitem.cpp.
|
virtual |
paint function called by map canvas
Reimplemented from QgsMapCanvasItem.
Definition at line 120 of file qgsformannotationitem.cpp.
References QgsAnnotationItem::drawFrame(), QgsAnnotationItem::drawMarkerSymbol(), QgsAnnotationItem::drawSelectionBoxes(), QgsAnnotationItem::mFrameBorderWidth, QgsAnnotationItem::mFrameSize, QgsAnnotationItem::mMapPositionFixed, QgsAnnotationItem::mOffsetFromReferencePoint, and mWidgetContainer.
| QSizeF QgsFormAnnotationItem::preferredFrameSize | ( | ) | const |
Returns the optimal frame size.
Definition at line 158 of file qgsformannotationitem.cpp.
References mDesignerWidget.
Referenced by setDesignerForm().
|
virtual |
Implements QgsAnnotationItem.
Definition at line 190 of file qgsformannotationitem.cpp.
References QgsAnnotationItem::_readXML(), createDesignerWidget(), QgsMapLayerRegistry::instance(), QgsMapLayerRegistry::mapLayer(), mDesignerForm, mDesignerWidget, mFeature, QgsAnnotationItem::mFrameBackgroundColor, mHasAssociatedFeature, QgsMapCanvasItem::mMapCanvas, mVectorLayer, mWidgetContainer, setFeatureForMapPosition(), and updateVisibility().
| void QgsFormAnnotationItem::setDesignerForm | ( | const QString & | uiFile | ) |
Definition at line 57 of file qgsformannotationitem.cpp.
References createDesignerWidget(), mDesignerForm, mDesignerWidget, QgsAnnotationItem::mFrameBackgroundColor, mWidgetContainer, preferredFrameSize(), and QgsAnnotationItem::setFrameSize().
|
privateslot |
Sets a feature for the current map position and updates the dialog.
Definition at line 221 of file qgsformannotationitem.cpp.
References createDesignerWidget(), QGis::DEFAULT_IDENTIFY_RADIUS, QgsFeatureRequest::ExactIntersect, QgsMapCanvas::extent(), QgsVectorLayer::getFeatures(), QgsFeature::id(), mDesignerForm, mDesignerWidget, mFeature, QgsAnnotationItem::mFrameBackgroundColor, mHasAssociatedFeature, QgsMapCanvasItem::mMapCanvas, QgsAnnotationItem::mMapPosition, mVectorLayer, mWidgetContainer, QgsFeatureRequest::NoGeometry, QgsRectangle::width(), QgsPoint::x(), and QgsPoint::y().
Referenced by QgsFormAnnotationItem(), readXML(), and setMapPosition().
|
virtual |
Reimplemented from QgsAnnotationItem.
Reimplemented from QgsAnnotationItem.
Definition at line 109 of file qgsformannotationitem.cpp.
References setFeatureForMapPosition().
|
privateslot |
Sets visibility status based on mVectorLayer visibility.
Definition at line 261 of file qgsformannotationitem.cpp.
References QgsMapCanvas::layers(), QgsMapCanvasItem::mMapCanvas, and mVectorLayer.
Referenced by QgsFormAnnotationItem(), and readXML().
|
inline |
Definition at line 53 of file qgsformannotationitem.h.
|
virtual |
Implements QgsAnnotationItem.
Definition at line 170 of file qgsformannotationitem.cpp.
References QgsAnnotationItem::_writeXML(), QgsMapLayer::id(), mDesignerForm, mFeature, mHasAssociatedFeature, and mVectorLayer.
|
private |
Path to (and including) the .ui file.
Definition at line 71 of file qgsformannotationitem.h.
Referenced by QgsFormAnnotationItem(), readXML(), setDesignerForm(), setFeatureForMapPosition(), and writeXML().
|
private |
Definition at line 63 of file qgsformannotationitem.h.
Referenced by minimumFrameSize(), preferredFrameSize(), readXML(), setDesignerForm(), setFeatureForMapPosition(), and ~QgsFormAnnotationItem().
|
private |
Associated feature.
Definition at line 69 of file qgsformannotationitem.h.
Referenced by createDesignerWidget(), readXML(), setFeatureForMapPosition(), and writeXML().
|
private |
True if the item is related to a vector feature.
Definition at line 67 of file qgsformannotationitem.h.
Referenced by createDesignerWidget(), readXML(), setFeatureForMapPosition(), and writeXML().
|
private |
Associated vectorlayer (or 0 if attributes are not supposed to be replaced)
Definition at line 65 of file qgsformannotationitem.h.
Referenced by createDesignerWidget(), QgsFormAnnotationItem(), readXML(), setFeatureForMapPosition(), updateVisibility(), and writeXML().
|
private |
Definition at line 62 of file qgsformannotationitem.h.
Referenced by paint(), QgsFormAnnotationItem(), readXML(), setDesignerForm(), and setFeatureForMapPosition().
1.8.1.2