25 #define FONT_WORKAROUND_SCALE 10 //scale factor for upscaling fontsize and downscaling painter 28 #define M_DEG2RAD 0.0174532925 33 , mComposition( composition )
77 if ( itemElem.isNull() )
97 QMap< QgsComposerObject::DataDefinedProperty, QgsDataDefined* >::const_iterator it = mDataDefinedProperties.find( property );
98 if ( it != mDataDefinedProperties.constEnd() )
115 bool defaultVals = ( !active && !useExpression && expression.isEmpty() && field.isEmpty() );
117 if ( mDataDefinedProperties.contains( property ) )
119 QMap< QgsComposerObject::DataDefinedProperty, QgsDataDefined* >::const_iterator it = mDataDefinedProperties.find( property );
120 if ( it != mDataDefinedProperties.constEnd() )
129 else if ( !defaultVals )
132 mDataDefinedProperties.insert( property, dd );
143 Q_UNUSED( property );
154 return mComposition->dataDefinedEvaluate( property, expressionValue, &mDataDefinedProperties );
157 void QgsComposerObject::prepareDataDefinedExpressions()
const 164 if ( atlas && atlas->
enabled() )
171 QMap< DataDefinedProperty, QgsDataDefined* >::const_iterator it = mDataDefinedProperties.constBegin();
172 if ( it != mDataDefinedProperties.constEnd() )
174 it.value()->prepareExpression( atlasLayer );
void setActive(bool active)
virtual bool writeXML(QDomElement &elem, QDomDocument &doc) const
Stores item state in DOM element.
A container class for data source field mapping or expression.
virtual ~QgsComposerObject()
static void readDataDefinedPropertyMap(const QDomElement &itemElem, QMap< QgsComposerObject::DataDefinedProperty, QString > *dataDefinedNames, QMap< QgsComposerObject::DataDefinedProperty, QgsDataDefined * > *dataDefinedProperties)
Reads all data defined properties from xml.
QMap< QgsComposerObject::DataDefinedProperty, QString > mDataDefinedNames
Map of data defined properties for the item to string name to use when exporting item to xml...
bool enabled() const
Returns whether the atlas generation is enabled.
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
static void writeDataDefinedPropertyMap(QDomElement &itemElem, QDomDocument &doc, const QMap< QgsComposerObject::DataDefinedProperty, QString > *dataDefinedNames, const QMap< QgsComposerObject::DataDefinedProperty, QgsDataDefined * > *dataDefinedProperties)
Writes data defined properties to xml.
DataDefinedProperty
Data defined properties for different item types.
bool dataDefinedEvaluate(const QgsComposerObject::DataDefinedProperty property, QVariant &expressionValue)
Evaluate a data defined property and return the calculated value.
QgsComposerObject(QgsComposition *composition)
Constructor.
QgsDataDefined * dataDefinedProperty(const DataDefinedProperty property) const
Returns a reference to the data defined settings for one of the item's data defined properties...
void setUseExpression(bool use)
void setField(const QString &field)
virtual void repaint()
Triggers a redraw for the item.
Graphics scene for map printing.
QgsComposition * mComposition
virtual bool readXML(const QDomElement &itemElem, const QDomDocument &doc)
Sets item state from DOM element.
void setDataDefinedProperty(const DataDefinedProperty property, const bool active, const bool useExpression, const QString &expression, const QString &field)
Sets parameters for a data defined property for the item.
Class used to render an Atlas, iterating over geometry features.
QgsAtlasComposition & atlasComposition()
QgsVectorLayer * coverageLayer() const
Returns the coverage layer used for the atlas features.
Represents a vector layer which manages a vector based data sets.
void setExpressionString(const QString &expr)
virtual void refreshDataDefinedProperty(const DataDefinedProperty property=AllProperties)
Refreshes a data defined property for the item by reevaluating the property's value and redrawing the...