#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 |
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. | |
int | mFeature |
Associated feature. | |
QString | mDesignerForm |
Path to (and including) the .ui file. |
Definition at line 27 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 | ( | ) |
void QgsFormAnnotationItem::paint | ( | QPainter * | painter | ) | [virtual] |
function to be implemented by derived classes
Implements QgsMapCanvasItem.
Definition at line 116 of file qgsformannotationitem.cpp.
void QgsFormAnnotationItem::paint | ( | QPainter * | painter, | |
const QStyleOptionGraphicsItem * | option, | |||
QWidget * | widget = 0 | |||
) | [virtual] |
paint function called by map canvas
Reimplemented from QgsMapCanvasItem.
Definition at line 121 of file qgsformannotationitem.cpp.
References QgsAnnotationItem::drawFrame(), QgsAnnotationItem::drawMarkerSymbol(), QgsAnnotationItem::drawSelectionBoxes(), QgsAnnotationItem::mFrameBorderWidth, QgsAnnotationItem::mFrameSize, QgsAnnotationItem::mMapPositionFixed, QgsAnnotationItem::mOffsetFromReferencePoint, and mWidgetContainer.
QSizeF QgsFormAnnotationItem::minimumFrameSize | ( | ) | const [virtual] |
Reimplemented from QgsAnnotationItem.
Definition at line 144 of file qgsformannotationitem.cpp.
References mDesignerWidget, and QgsAnnotationItem::mFrameBorderWidth.
QSizeF QgsFormAnnotationItem::preferredFrameSize | ( | ) | const |
Returns the optimal frame size.
Definition at line 157 of file qgsformannotationitem.cpp.
References mDesignerWidget.
Referenced by setDesignerForm().
void QgsFormAnnotationItem::setMapPosition | ( | const QgsPoint & | pos | ) | [virtual] |
Reimplemented from QgsAnnotationItem.
Reimplemented from QgsAnnotationItem.
Definition at line 110 of file qgsformannotationitem.cpp.
References setFeatureForMapPosition(), and QgsAnnotationItem::setMapPosition().
void QgsFormAnnotationItem::setDesignerForm | ( | const QString & | uiFile | ) |
Definition at line 56 of file qgsformannotationitem.cpp.
References createDesignerWidget(), mDesignerForm, mDesignerWidget, QgsAnnotationItem::mFrameBackgroundColor, mWidgetContainer, preferredFrameSize(), and QgsAnnotationItem::setFrameSize().
QString QgsFormAnnotationItem::designerForm | ( | ) | const [inline] |
Definition at line 47 of file qgsformannotationitem.h.
void QgsFormAnnotationItem::writeXML | ( | QDomDocument & | doc | ) | const [virtual] |
Implements QgsAnnotationItem.
Definition at line 169 of file qgsformannotationitem.cpp.
References QgsAnnotationItem::_writeXML(), QgsMapLayer::getLayerID(), mDesignerForm, mFeature, mHasAssociatedFeature, and mVectorLayer.
void QgsFormAnnotationItem::readXML | ( | const QDomDocument & | doc, | |
const QDomElement & | itemElem | |||
) | [virtual] |
Implements QgsAnnotationItem.
Definition at line 189 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().
QgsVectorLayer* QgsFormAnnotationItem::vectorLayer | ( | ) | const [inline] |
Definition at line 52 of file qgsformannotationitem.h.
void QgsFormAnnotationItem::setFeatureForMapPosition | ( | ) | [private, slot] |
Sets a feature for the current map position and updates the dialog.
Definition at line 220 of file qgsformannotationitem.cpp.
References createDesignerWidget(), QGis::DEFAULT_IDENTIFY_RADIUS, QgsMapCanvas::extent(), QgsFeature::id(), mDesignerForm, mDesignerWidget, mFeature, QgsAnnotationItem::mFrameBackgroundColor, mHasAssociatedFeature, QgsMapCanvasItem::mMapCanvas, QgsAnnotationItem::mMapPosition, mVectorLayer, mWidgetContainer, QgsVectorLayer::nextFeature(), QgsVectorLayer::select(), QgsRectangle::width(), QgsPoint::x(), and QgsPoint::y().
Referenced by QgsFormAnnotationItem(), readXML(), and setMapPosition().
void QgsFormAnnotationItem::updateVisibility | ( | ) | [private, slot] |
Sets visibility status based on mVectorLayer visibility.
Definition at line 260 of file qgsformannotationitem.cpp.
References QgsMapCanvas::layers(), QgsMapCanvasItem::mMapCanvas, and mVectorLayer.
Referenced by QgsFormAnnotationItem(), and readXML().
QWidget * QgsFormAnnotationItem::createDesignerWidget | ( | const QString & | filePath | ) | [private] |
Definition at line 70 of file qgsformannotationitem.cpp.
References QgsFeature::attributeMap(), QgsAttributeEditor::createAttributeEditor(), QgsVectorLayer::featureAtId(), mFeature, mHasAssociatedFeature, mVectorLayer, and QgsVectorLayer::pendingFields().
Referenced by readXML(), setDesignerForm(), and setFeatureForMapPosition().
QGraphicsProxyWidget* QgsFormAnnotationItem::mWidgetContainer [private] |
Definition at line 61 of file qgsformannotationitem.h.
Referenced by paint(), QgsFormAnnotationItem(), readXML(), setDesignerForm(), and setFeatureForMapPosition().
QWidget* QgsFormAnnotationItem::mDesignerWidget [private] |
Definition at line 62 of file qgsformannotationitem.h.
Referenced by minimumFrameSize(), preferredFrameSize(), readXML(), setDesignerForm(), setFeatureForMapPosition(), and ~QgsFormAnnotationItem().
Associated vectorlayer (or 0 if attributes are not supposed to be replaced).
Definition at line 64 of file qgsformannotationitem.h.
Referenced by createDesignerWidget(), QgsFormAnnotationItem(), readXML(), setFeatureForMapPosition(), updateVisibility(), and writeXML().
bool QgsFormAnnotationItem::mHasAssociatedFeature [private] |
True if the item is related to a vector feature.
Definition at line 66 of file qgsformannotationitem.h.
Referenced by createDesignerWidget(), readXML(), setFeatureForMapPosition(), and writeXML().
int QgsFormAnnotationItem::mFeature [private] |
Associated feature.
Definition at line 68 of file qgsformannotationitem.h.
Referenced by createDesignerWidget(), readXML(), setFeatureForMapPosition(), and writeXML().
QString QgsFormAnnotationItem::mDesignerForm [private] |
Path to (and including) the .ui file.
Definition at line 70 of file qgsformannotationitem.h.
Referenced by QgsFormAnnotationItem(), readXML(), setDesignerForm(), setFeatureForMapPosition(), and writeXML().