Quantum GIS API Documentation  1.7.5-Wroclaw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
QgsSingleSymbolRenderer Class Reference

Render class to display all the features with a single QgsSymbol. More...

#include <qgssinglesymbolrenderer.h>

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

Public Member Functions

 QgsSingleSymbolRenderer (QGis::GeometryType type)
 
 QgsSingleSymbolRenderer (const QgsSingleSymbolRenderer &other)
 
QgsSingleSymbolRendereroperator= (const QgsSingleSymbolRenderer &other)
 
virtual ~QgsSingleSymbolRenderer ()
 
void addSymbol (QgsSymbol *sy)
 Replaces the current mSymbol by sy. More...
 
const QgsSymbolsymbol () const
 
void renderFeature (QgsRenderContext &renderContext, QgsFeature &f, QImage *img, bool selected, double opacity=1.0)
 Renders a feature added in 1.2. More...
 
virtual int readXML (const QDomNode &rnode, QgsVectorLayer &vl)
 Reads the renderer configuration from an XML file. More...
 
virtual bool writeXML (QDomNode &layer_node, QDomDocument &document, const QgsVectorLayer &vl) const
 Writes the contents of the renderer to a configuration file. More...
 
bool needsAttributes () const
 Returns true, attributes needed for single symbol. More...
 
QgsAttributeList classificationAttributes () const
 Returns a list of all needed attributes. More...
 
void updateSymbolAttributes ()
 
virtual QString name () const
 Returns the renderers name. More...
 
const QList< QgsSymbol * > symbols () const
 Returns a list containing mSymbol. More...
 
QgsRendererclone () const
 Returns a deep copy of this renderer. More...
 
QgsSymbolsymbolForFeature (const QgsFeature *f)
 Returns renderer symbol for a feature. More...
 
- Public Member Functions inherited from QgsRenderer
 QgsRenderer ()
 Default ctor sets up selection color from project properties. More...
 
virtual ~QgsRenderer ()
 Virtual destructor because we have virtual methods... More...
 
virtual bool willRenderFeature (QgsFeature *f)
 Determines if a feature will be rendered or not. More...
 
void renderFeature (QPainter *p, QgsFeature &f, QImage *img, bool selected, double widthScale=1.0, double rasterScaleFactor=1.0)
 A vector layer passes features to a renderer object to change the brush and pen of the qpainter. More...
 
void renderFeature (QgsRenderContext &renderContext, QgsFeature &f, QImage *pic, bool selected)
 A vector layer passes features to a renderer object to change the brush and pen of the qpainter. More...
 
virtual bool containsPixmap () const
 Returns true if this renderer returns a pixmap in the render method (e.g. More...
 
virtual bool usesTransparency () const
 Returns true if this renderer uses its own transparency settings, e.g. More...
 

Protected Attributes

QgsSymbolmSymbol0
 Object containing symbology information. More...
 
QMap< QString, QgsSymbol * > mSymbols
 
QgsAttributeList mSymbolAttributes
 Cached copy of all underlying symbols required attribute fields. More...
 
- Protected Attributes inherited from QgsRenderer
QGis::GeometryType mGeometryType
 Layer type. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from QgsRenderer
static void setSelectionColor (QColor color)
 Change selection color. More...
 
static QColor selectionColor ()
 Get selection color. More...
 
static void scaleBrush (QBrush &b, double rasterScaleFactor)
 Scales a brush to a given raster scale factor (e.g. More...
 
- Static Protected Attributes inherited from QgsRenderer
static QColor mSelectionColor = QColor( 0, 0, 0 )
 Color to draw selected features - static so we can change it in proj props and automatically all renderers are updated. More...
 

Detailed Description

Render class to display all the features with a single QgsSymbol.

Definition at line 28 of file qgssinglesymbolrenderer.h.

Constructor & Destructor Documentation

QgsSingleSymbolRenderer::QgsSingleSymbolRenderer ( QGis::GeometryType  type)
QgsSingleSymbolRenderer::QgsSingleSymbolRenderer ( const QgsSingleSymbolRenderer other)

Definition at line 62 of file qgssinglesymbolrenderer.cpp.

QgsSingleSymbolRenderer::~QgsSingleSymbolRenderer ( )
virtual

Definition at line 89 of file qgssinglesymbolrenderer.cpp.

References mSymbols.

Member Function Documentation

void QgsSingleSymbolRenderer::addSymbol ( QgsSymbol sy)

Replaces the current mSymbol by sy.

Definition at line 95 of file qgssinglesymbolrenderer.cpp.

References mSymbol0, mSymbols, and updateSymbolAttributes().

Referenced by readXML(), and QgsSymbologyV2Conversion::rendererV2toV1().

QgsAttributeList QgsSingleSymbolRenderer::classificationAttributes ( ) const
virtual

Returns a list of all needed attributes.

Implements QgsRenderer.

Definition at line 240 of file qgssinglesymbolrenderer.cpp.

References mSymbolAttributes.

QgsRenderer * QgsSingleSymbolRenderer::clone ( ) const
virtual

Returns a deep copy of this renderer.

Implements QgsRenderer.

Definition at line 278 of file qgssinglesymbolrenderer.cpp.

References QgsSingleSymbolRenderer().

QString QgsSingleSymbolRenderer::name ( ) const
virtual

Returns the renderers name.

Implements QgsRenderer.

Definition at line 268 of file qgssinglesymbolrenderer.cpp.

Referenced by renderFeature().

bool QgsSingleSymbolRenderer::needsAttributes ( ) const
inlinevirtual

Returns true, attributes needed for single symbol.

Implements QgsRenderer.

Definition at line 85 of file qgssinglesymbolrenderer.h.

QgsSingleSymbolRenderer & QgsSingleSymbolRenderer::operator= ( const QgsSingleSymbolRenderer other)
int QgsSingleSymbolRenderer::readXML ( const QDomNode &  rnode,
QgsVectorLayer vl 
)
virtual

Reads the renderer configuration from an XML file.

Parameters
rnodethe Dom node to read
vlthe vector layer which will be associated with the renderer
Returns
0 in case of success, 1 if vector layer has no renderer, 2 if classification field not found

Implements QgsRenderer.

Definition at line 202 of file qgssinglesymbolrenderer.cpp.

References addSymbol(), QgsVectorLayer::geometryType(), QgsRenderer::mGeometryType, QgsDebugMsg, QgsSymbol::readXML(), QgsVectorLayer::setRenderer(), and updateSymbolAttributes().

void QgsSingleSymbolRenderer::renderFeature ( QgsRenderContext renderContext,
QgsFeature f,
QImage *  img,
bool  selected,
double  opacity = 1.0 
)
virtual
const QgsSymbol * QgsSingleSymbolRenderer::symbol ( ) const
inline

Definition at line 80 of file qgssinglesymbolrenderer.h.

References mSymbol0.

Referenced by QgsSymbologyV2Conversion::rendererV1toV2().

QgsSymbol* QgsSingleSymbolRenderer::symbolForFeature ( const QgsFeature f)
inlinevirtual

Returns renderer symbol for a feature.

Note
: this method was added in version 1.6

Reimplemented from QgsRenderer.

Definition at line 70 of file qgssinglesymbolrenderer.h.

const QList< QgsSymbol * > QgsSingleSymbolRenderer::symbols ( ) const
virtual

Returns a list containing mSymbol.

Implements QgsRenderer.

Definition at line 273 of file qgssinglesymbolrenderer.cpp.

References mSymbols.

void QgsSingleSymbolRenderer::updateSymbolAttributes ( )
bool QgsSingleSymbolRenderer::writeXML ( QDomNode &  layer_node,
QDomDocument &  document,
const QgsVectorLayer vl 
) const
virtual

Writes the contents of the renderer to a configuration file.

Writes the contents of the renderer to a configuration file @ return true in case of success

Implements QgsRenderer.

Definition at line 226 of file qgssinglesymbolrenderer.cpp.

References mSymbol0, and QgsSymbol::writeXML().

Member Data Documentation

QgsSymbol* QgsSingleSymbolRenderer::mSymbol0
protected

Object containing symbology information.

Definition at line 74 of file qgssinglesymbolrenderer.h.

Referenced by addSymbol(), operator=(), QgsSingleSymbolRenderer(), renderFeature(), symbol(), updateSymbolAttributes(), and writeXML().

QgsAttributeList QgsSingleSymbolRenderer::mSymbolAttributes
protected

Cached copy of all underlying symbols required attribute fields.

Definition at line 77 of file qgssinglesymbolrenderer.h.

Referenced by classificationAttributes(), and updateSymbolAttributes().

QMap<QString, QgsSymbol*> QgsSingleSymbolRenderer::mSymbols
protected

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