QGIS API Documentation  2.5.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
QgsCategorizedSymbolRendererV2 Class Reference

#include <qgscategorizedsymbolrendererv2.h>

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

Public Member Functions

 QgsCategorizedSymbolRendererV2 (QString attrName=QString(), QgsCategoryList categories=QgsCategoryList())
virtual ~QgsCategorizedSymbolRendererV2 ()
virtual QgsSymbolV2symbolForFeature (QgsFeature &feature)
 to be overridden
virtual void startRender (QgsRenderContext &context, const QgsFields &fields)
virtual void stopRender (QgsRenderContext &context)
virtual QList< QString > usedAttributes ()
virtual QString dump () const
 for debugging
virtual QgsFeatureRendererV2clone ()
virtual void toSld (QDomDocument &doc, QDomElement &element) const
 used from subclasses to create SLD Rule elements following SLD v1.1 specs
virtual int capabilities ()
 returns bitwise OR-ed capabilities of the renderer
virtual QgsSymbolV2List symbols ()
 for symbol levels
void updateSymbols (QgsSymbolV2 *sym)
const QgsCategoryListcategories () const
int categoryIndexForValue (QVariant val)
 return index of category with specified value (-1 if not found)
int categoryIndexForLabel (QString val)
 return index of category with specified label (-1 if not found or not unique)
bool updateCategoryValue (int catIndex, const QVariant &value)
bool updateCategorySymbol (int catIndex, QgsSymbolV2 *symbol)
bool updateCategoryLabel (int catIndex, QString label)
bool updateCategoryRenderState (int catIndex, bool render)
void addCategory (const QgsRendererCategoryV2 &category)
bool deleteCategory (int catIndex)
void deleteAllCategories ()
void moveCategory (int from, int to)
 Moves the category at index position from to index position to.
void sortByValue (Qt::SortOrder order=Qt::AscendingOrder)
void sortByLabel (Qt::SortOrder order=Qt::AscendingOrder)
QString classAttribute () const
void setClassAttribute (QString attr)
virtual QDomElement save (QDomDocument &doc)
 store renderer info to XML element
virtual QgsLegendSymbologyList legendSymbologyItems (QSize iconSize)
 return a list of symbology items for the legend
virtual QgsLegendSymbolList legendSymbolItems (double scaleDenominator=-1, QString rule=QString())
 return a list of item text / symbol
QgsSymbolV2sourceSymbol ()
void setSourceSymbol (QgsSymbolV2 *sym)
QgsVectorColorRampV2sourceColorRamp ()
void setSourceColorRamp (QgsVectorColorRampV2 *ramp)
bool invertedColorRamp ()
void setInvertedColorRamp (bool inverted)
void setRotationField (QString fieldOrExpression)
QString rotationField () const
void setSizeScaleField (QString fieldOrExpression)
QString sizeScaleField () const
void setScaleMethod (QgsSymbolV2::ScaleMethod scaleMethod)
QgsSymbolV2::ScaleMethod scaleMethod () const
virtual bool legendSymbolItemsCheckable () const
 items of symbology items in legend should be checkable
virtual bool legendSymbolItemChecked (int index)
 item in symbology was checked
virtual void checkLegendSymbolItem (int index, bool state=true)
 item in symbology was checked
- Public Member Functions inherited from QgsFeatureRendererV2
QString type () const
virtual Q_DECL_DEPRECATED void startRender (QgsRenderContext &context, const QgsVectorLayer *vlayer)
virtual ~QgsFeatureRendererV2 ()
virtual bool renderFeature (QgsFeature &feature, QgsRenderContext &context, int layer=-1, bool selected=false, bool drawVertexMarker=false)
bool usingSymbolLevels () const
void setUsingSymbolLevels (bool usingSymbolLevels)
virtual QDomElement writeSld (QDomDocument &doc, const QgsVectorLayer &layer) const
 create the SLD UserStyle element following the SLD v1.1 specs
void setVertexMarkerAppearance (int type, int size)
 set type and size of editing vertex markers for subsequent rendering
virtual bool willRenderFeature (QgsFeature &feat)
 return whether the renderer will render a feature or not.
virtual QgsSymbolV2List symbolsForFeature (QgsFeature &feat)
 return list of symbols used for rendering the feature.

Static Public Member Functions

static QgsFeatureRendererV2create (QDomElement &element)
 create renderer from XML element
- Static Public Member Functions inherited from QgsFeatureRendererV2
static QgsFeatureRendererV2defaultRenderer (QGis::GeometryType geomType)
 return a new renderer - used by default in vector layers
static QgsFeatureRendererV2load (QDomElement &symbologyElem)
 create a renderer from XML element
static QgsFeatureRendererV2loadSld (const QDomNode &node, QGis::GeometryType geomType, QString &errorMessage)
 create a new renderer according to the information contained in the UserStyle element of a SLD style document

Protected Member Functions

void rebuildHash ()
QgsSymbolV2symbolForValue (QVariant value)
- Protected Member Functions inherited from QgsFeatureRendererV2
 QgsFeatureRendererV2 (QString type)
void renderFeatureWithSymbol (QgsFeature &feature, QgsSymbolV2 *symbol, QgsRenderContext &context, int layer, bool selected, bool drawVertexMarker)
void renderVertexMarker (QPointF &pt, QgsRenderContext &context)
 render editing vertex marker at specified point
void renderVertexMarkerPolyline (QPolygonF &pts, QgsRenderContext &context)
 render editing vertex marker for a polyline
void renderVertexMarkerPolygon (QPolygonF &pts, QList< QPolygonF > *rings, QgsRenderContext &context)
 render editing vertex marker for a polygon
void setScaleMethodToSymbol (QgsSymbolV2 *symbol, int scaleMethod)

Protected Attributes

QString mAttrName
QgsCategoryList mCategories
QScopedPointer< QgsSymbolV2mSourceSymbol
QScopedPointer
< QgsVectorColorRampV2
mSourceColorRamp
bool mInvertedColorRamp
QScopedPointer< QgsExpressionmRotation
QScopedPointer< QgsExpressionmSizeScale
QgsSymbolV2::ScaleMethod mScaleMethod
QScopedPointer< QgsExpressionmExpression
int mAttrNum
 attribute index (derived from attribute name in startRender)
QHash< QString, QgsSymbolV2 * > mSymbolHash
 hashtable for faster access to symbols
bool mCounting
QHash< QString, QgsSymbolV2 * > mTempSymbols
 temporary symbols, used for data-defined rotation and scaling
- Protected Attributes inherited from QgsFeatureRendererV2
QString mType
bool mUsingSymbolLevels
int mCurrentVertexMarkerType
 The current type of editing marker.
int mCurrentVertexMarkerSize
 The current size of editing marker.

Static Protected Attributes

static QgsMarkerSymbolV2 sSkipRender

Additional Inherited Members

- Public Types inherited from QgsFeatureRendererV2
enum  Capabilities {
  SymbolLevels = 1, RotationField = 1 << 1, MoreSymbolsPerFeature = 1 << 2, Filter = 1 << 3,
  ScaleDependent = 1 << 4
}
- Static Protected Member Functions inherited from QgsFeatureRendererV2
static const unsigned char * _getPoint (QPointF &pt, QgsRenderContext &context, const unsigned char *wkb)
static const unsigned char * _getLineString (QPolygonF &pts, QgsRenderContext &context, const unsigned char *wkb)
static const unsigned char * _getPolygon (QPolygonF &pts, QList< QPolygonF > &holes, QgsRenderContext &context, const unsigned char *wkb)

Detailed Description

Definition at line 70 of file qgscategorizedsymbolrendererv2.h.

Constructor & Destructor Documentation

QgsCategorizedSymbolRendererV2::QgsCategorizedSymbolRendererV2 ( QString  attrName = QString(),
QgsCategoryList  categories = QgsCategoryList() 
)

Definition at line 142 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories, QgsDebugMsg, and QgsRendererCategoryV2::symbol().

Referenced by clone(), and create().

QgsCategorizedSymbolRendererV2::~QgsCategorizedSymbolRendererV2 ( )
virtual

Definition at line 161 of file qgscategorizedsymbolrendererv2.cpp.

Member Function Documentation

void QgsCategorizedSymbolRendererV2::addCategory ( const QgsRendererCategoryV2 category)
virtual int QgsCategorizedSymbolRendererV2::capabilities ( )
inlinevirtual

returns bitwise OR-ed capabilities of the renderer

Note
added in 2.0

Reimplemented from QgsFeatureRendererV2.

Definition at line 94 of file qgscategorizedsymbolrendererv2.h.

References QgsFeatureRendererV2::Filter.

const QgsCategoryList& QgsCategorizedSymbolRendererV2::categories ( ) const
inline
int QgsCategorizedSymbolRendererV2::categoryIndexForLabel ( QString  val)

return index of category with specified label (-1 if not found or not unique)

Note
added in 2.5

Definition at line 258 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories.

int QgsCategorizedSymbolRendererV2::categoryIndexForValue ( QVariant  val)

return index of category with specified value (-1 if not found)

Definition at line 248 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories.

void QgsCategorizedSymbolRendererV2::checkLegendSymbolItem ( int  index,
bool  state = true 
)
virtual

item in symbology was checked

Reimplemented from QgsFeatureRendererV2.

Definition at line 765 of file qgscategorizedsymbolrendererv2.cpp.

References updateCategoryRenderState().

QString QgsCategorizedSymbolRendererV2::classAttribute ( ) const
inline
QgsFeatureRendererV2 * QgsCategorizedSymbolRendererV2::clone ( )
virtual
QgsFeatureRendererV2 * QgsCategorizedSymbolRendererV2::create ( QDomElement &  element)
static
void QgsCategorizedSymbolRendererV2::deleteAllCategories ( )
bool QgsCategorizedSymbolRendererV2::deleteCategory ( int  catIndex)
QString QgsCategorizedSymbolRendererV2::dump ( ) const
virtual

for debugging

Reimplemented from QgsFeatureRendererV2.

Definition at line 457 of file qgscategorizedsymbolrendererv2.cpp.

References mAttrName, and mCategories.

bool QgsCategorizedSymbolRendererV2::invertedColorRamp ( )
inline
Note
added in 2.1

Definition at line 150 of file qgscategorizedsymbolrendererv2.h.

Referenced by QgsCategorizedSymbolRendererV2Widget::updateUiFromRenderer().

bool QgsCategorizedSymbolRendererV2::legendSymbolItemChecked ( int  index)
virtual

item in symbology was checked

Reimplemented from QgsFeatureRendererV2.

Definition at line 757 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories.

QgsLegendSymbolList QgsCategorizedSymbolRendererV2::legendSymbolItems ( double  scaleDenominator = -1,
QString  rule = QString() 
)
virtual

return a list of item text / symbol

Note
this method was added in version 1.5
not available in python bindings

Reimplemented from QgsFeatureRendererV2.

Definition at line 669 of file qgscategorizedsymbolrendererv2.cpp.

References classAttribute(), QgsRendererCategoryV2::label(), mCategories, and QgsRendererCategoryV2::symbol().

bool QgsCategorizedSymbolRendererV2::legendSymbolItemsCheckable ( ) const
virtual

items of symbology items in legend should be checkable

Reimplemented from QgsFeatureRendererV2.

Definition at line 752 of file qgscategorizedsymbolrendererv2.cpp.

QgsLegendSymbologyList QgsCategorizedSymbolRendererV2::legendSymbologyItems ( QSize  iconSize)
virtual
void QgsCategorizedSymbolRendererV2::moveCategory ( int  from,
int  to 
)

Moves the category at index position from to index position to.

Definition at line 331 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories.

Referenced by QgsCategorizedSymbolRendererV2Model::dropMimeData().

void QgsCategorizedSymbolRendererV2::rebuildHash ( )
protected
QString QgsCategorizedSymbolRendererV2::rotationField ( ) const
virtual
QDomElement QgsCategorizedSymbolRendererV2::save ( QDomDocument &  doc)
virtual
QgsSymbolV2::ScaleMethod QgsCategorizedSymbolRendererV2::scaleMethod ( ) const
inline
void QgsCategorizedSymbolRendererV2::setClassAttribute ( QString  attr)
inline
void QgsCategorizedSymbolRendererV2::setInvertedColorRamp ( bool  inverted)
inline
void QgsCategorizedSymbolRendererV2::setRotationField ( QString  fieldOrExpression)
virtual
void QgsCategorizedSymbolRendererV2::setScaleMethod ( QgsSymbolV2::ScaleMethod  scaleMethod)
void QgsCategorizedSymbolRendererV2::setSizeScaleField ( QString  fieldOrExpression)
void QgsCategorizedSymbolRendererV2::setSourceColorRamp ( QgsVectorColorRampV2 ramp)
void QgsCategorizedSymbolRendererV2::setSourceSymbol ( QgsSymbolV2 sym)
QString QgsCategorizedSymbolRendererV2::sizeScaleField ( ) const
void QgsCategorizedSymbolRendererV2::sortByLabel ( Qt::SortOrder  order = Qt::AscendingOrder)
void QgsCategorizedSymbolRendererV2::sortByValue ( Qt::SortOrder  order = Qt::AscendingOrder)
QgsVectorColorRampV2 * QgsCategorizedSymbolRendererV2::sourceColorRamp ( )
QgsSymbolV2 * QgsCategorizedSymbolRendererV2::sourceSymbol ( )
void QgsCategorizedSymbolRendererV2::startRender ( QgsRenderContext context,
const QgsFields fields 
)
virtual
void QgsCategorizedSymbolRendererV2::stopRender ( QgsRenderContext context)
virtual

Implements QgsFeatureRendererV2.

Definition at line 411 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories, mExpression, and mTempSymbols.

QgsSymbolV2 * QgsCategorizedSymbolRendererV2::symbolForFeature ( QgsFeature feature)
virtual
QgsSymbolV2 * QgsCategorizedSymbolRendererV2::symbolForValue ( QVariant  value)
protected

Definition at line 176 of file qgscategorizedsymbolrendererv2.cpp.

References mSymbolHash, QgsDebugMsg, and QgsDebugMsgLevel.

Referenced by symbolForFeature().

QgsSymbolV2List QgsCategorizedSymbolRendererV2::symbols ( )
virtual

for symbol levels

Implements QgsFeatureRendererV2.

Definition at line 499 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories.

Referenced by save().

void QgsCategorizedSymbolRendererV2::toSld ( QDomDocument &  doc,
QDomElement &  element 
) const
virtual

used from subclasses to create SLD Rule elements following SLD v1.1 specs

Note
added in 1.9

Reimplemented from QgsFeatureRendererV2.

Definition at line 482 of file qgscategorizedsymbolrendererv2.cpp.

References mAttrName, mCategories, mRotation, and mSizeScale.

bool QgsCategorizedSymbolRendererV2::updateCategoryLabel ( int  catIndex,
QString  label 
)
bool QgsCategorizedSymbolRendererV2::updateCategoryRenderState ( int  catIndex,
bool  render 
)
Note
added in 2.5

Definition at line 298 of file qgscategorizedsymbolrendererv2.cpp.

References mCategories.

Referenced by checkLegendSymbolItem(), and QgsCategorizedSymbolRendererV2Model::setData().

bool QgsCategorizedSymbolRendererV2::updateCategorySymbol ( int  catIndex,
QgsSymbolV2 symbol 
)
bool QgsCategorizedSymbolRendererV2::updateCategoryValue ( int  catIndex,
const QVariant &  value 
)
void QgsCategorizedSymbolRendererV2::updateSymbols ( QgsSymbolV2 sym)
QList< QString > QgsCategorizedSymbolRendererV2::usedAttributes ( )
virtual

Member Data Documentation

QString QgsCategorizedSymbolRendererV2::mAttrName
protected

Definition at line 181 of file qgscategorizedsymbolrendererv2.h.

Referenced by clone(), dump(), save(), startRender(), toSld(), and usedAttributes().

int QgsCategorizedSymbolRendererV2::mAttrNum
protected

attribute index (derived from attribute name in startRender)

Definition at line 192 of file qgscategorizedsymbolrendererv2.h.

Referenced by startRender(), and symbolForFeature().

QgsCategoryList QgsCategorizedSymbolRendererV2::mCategories
protected
bool QgsCategorizedSymbolRendererV2::mCounting
protected

Definition at line 196 of file qgscategorizedsymbolrendererv2.h.

Referenced by rebuildHash(), and startRender().

QScopedPointer<QgsExpression> QgsCategorizedSymbolRendererV2::mExpression
protected

Definition at line 189 of file qgscategorizedsymbolrendererv2.h.

Referenced by startRender(), stopRender(), and symbolForFeature().

bool QgsCategorizedSymbolRendererV2::mInvertedColorRamp
protected

Definition at line 185 of file qgscategorizedsymbolrendererv2.h.

Referenced by clone(), and save().

QScopedPointer<QgsExpression> QgsCategorizedSymbolRendererV2::mRotation
protected
QgsSymbolV2::ScaleMethod QgsCategorizedSymbolRendererV2::mScaleMethod
protected

Definition at line 188 of file qgscategorizedsymbolrendererv2.h.

Referenced by save(), setScaleMethod(), and symbolForFeature().

QScopedPointer<QgsExpression> QgsCategorizedSymbolRendererV2::mSizeScale
protected
QScopedPointer<QgsVectorColorRampV2> QgsCategorizedSymbolRendererV2::mSourceColorRamp
protected

Definition at line 184 of file qgscategorizedsymbolrendererv2.h.

Referenced by clone(), save(), setSourceColorRamp(), and sourceColorRamp().

QScopedPointer<QgsSymbolV2> QgsCategorizedSymbolRendererV2::mSourceSymbol
protected

Definition at line 183 of file qgscategorizedsymbolrendererv2.h.

Referenced by clone(), save(), setSourceSymbol(), and sourceSymbol().

QHash<QString, QgsSymbolV2*> QgsCategorizedSymbolRendererV2::mSymbolHash
protected

hashtable for faster access to symbols

Definition at line 195 of file qgscategorizedsymbolrendererv2.h.

Referenced by rebuildHash(), and symbolForValue().

QHash<QString, QgsSymbolV2*> QgsCategorizedSymbolRendererV2::mTempSymbols
protected

temporary symbols, used for data-defined rotation and scaling

Definition at line 199 of file qgscategorizedsymbolrendererv2.h.

Referenced by startRender(), stopRender(), and symbolForFeature().

QgsMarkerSymbolV2 QgsCategorizedSymbolRendererV2::sSkipRender
staticprotected

Definition at line 205 of file qgscategorizedsymbolrendererv2.h.

Referenced by rebuildHash(), and symbolForFeature().


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