QGIS API Documentation  master-3f58142
QgsSymbolV2 Class Reference

#include <qgssymbolv2.h>

+ Inheritance diagram for QgsSymbolV2:

List of all members.

Public Types

enum  OutputUnit { MM = 0, MapUnit, Mixed }
enum  RenderHint { DataDefinedSizeScale = 1, DataDefinedRotation = 2 }
enum  ScaleMethod { ScaleArea, ScaleDiameter }
enum  SymbolType { Marker, Line, Fill }

Public Member Functions

virtual ~QgsSymbolV2 ()
qreal alpha () const
 Get alpha transparency 1 for opaque, 0 for invisible.
bool appendSymbolLayer (QgsSymbolLayerV2 *layer)
 append symbol layer at the end of the list
QImage bigSymbolPreviewImage ()
bool changeSymbolLayer (int index, QgsSymbolLayerV2 *layer)
 delete layer at specified index and set a new one
virtual QgsSymbolV2clone () const =0
QColor color ()
bool deleteSymbolLayer (int index)
 delete symbol layer at specified index
void drawPreviewIcon (QPainter *painter, QSize size)
QString dump ()
bool insertSymbolLayer (int index, QgsSymbolLayerV2 *layer)
 insert symbol layer to specified index
QgsSymbolV2::OutputUnit outputUnit () const
int renderHints () const
void setAlpha (qreal alpha)
 Set alpha transparency 1 for opaque, 0 for invisible.
void setColor (const QColor &color)
void setOutputUnit (QgsSymbolV2::OutputUnit u)
void setRenderHints (int hints)
void startRender (QgsRenderContext &context, const QgsVectorLayer *layer=0)
void stopRender (QgsRenderContext &context)
QgsSymbolLayerV2symbolLayer (int layer)
int symbolLayerCount ()
QgsSymbolLayerV2takeSymbolLayer (int index)
 remove symbol layer from the list and return pointer to it
void toSld (QDomDocument &doc, QDomElement &element, QgsStringMap props) const
SymbolType type () const
QSet< QString > usedAttributes () const

Static Public Member Functions

static QgsSymbolV2defaultSymbol (QGis::GeometryType geomType)
 return new default symbol for specified geometry type

Protected Member Functions

 QgsSymbolV2 (SymbolType type, QgsSymbolLayerV2List layers)
QgsSymbolLayerV2List cloneLayers () const
bool isSymbolLayerCompatible (SymbolType t)
 check whether a symbol layer type can be used within the symbol (marker-marker, line-line, fill-fill/line)

Protected Attributes

qreal mAlpha
 Symbol opacity (in the range 0 - 1)
QgsSymbolLayerV2List mLayers
int mRenderHints
SymbolType mType

Detailed Description

Definition at line 41 of file qgssymbolv2.h.


Member Enumeration Documentation

Enumerator:
MM 
MapUnit 
Mixed 

Definition at line 45 of file qgssymbolv2.h.

Note:
added in 1.5
Enumerator:
DataDefinedSizeScale 
DataDefinedRotation 

Definition at line 66 of file qgssymbolv2.h.

Enumerator:
ScaleArea 
ScaleDiameter 

Definition at line 59 of file qgssymbolv2.h.

Enumerator:
Marker 
Line 
Fill 

Definition at line 52 of file qgssymbolv2.h.


Constructor & Destructor Documentation

Definition at line 56 of file qgssymbolv2.cpp.

References mLayers.

QgsSymbolV2::QgsSymbolV2 ( SymbolType  type,
QgsSymbolLayerV2List  layers 
) [protected]

Definition at line 36 of file qgssymbolv2.cpp.

References isSymbolLayerCompatible(), mLayers, and type().


Member Function Documentation

qreal QgsSymbolV2::alpha ( ) const [inline]

Get alpha transparency 1 for opaque, 0 for invisible.

Definition at line 120 of file qgssymbolv2.h.

Referenced by QgsSymbolsListWidget::QgsSymbolsListWidget(), QgsSymbolLayerV2Utils::saveSymbol(), and toSld().

append symbol layer at the end of the list

Definition at line 173 of file qgssymbolv2.cpp.

References isSymbolLayerCompatible(), mLayers, and QgsSymbolLayerV2::type().

Referenced by QgsSymbolV2SelectorDialog::addLayer(), and QgsSymbolsListWidget::setSymbolFromStyle().

bool QgsSymbolV2::changeSymbolLayer ( int  index,
QgsSymbolLayerV2 layer 
)

delete layer at specified index and set a new one

Definition at line 203 of file qgssymbolv2.cpp.

References isSymbolLayerCompatible(), mLayers, and QgsSymbolLayerV2::type().

Referenced by QgsSymbolV2SelectorDialog::changeLayer().

virtual QgsSymbolV2* QgsSymbolV2::clone ( ) const [pure virtual]

Implemented in QgsFillSymbolV2, QgsLineSymbolV2, and QgsMarkerSymbolV2.

Referenced by _createCategories(), QgsRendererRulePropsDialog::accept(), QgsCategorizedSymbolRendererV2Widget::addCategories(), QgsGraduatedSymbolRendererV2::addClass(), QgsSymbolsListWidget::addSymbolToStyle(), QgsCategorizedSymbolRendererV2Widget::changeCategorizedSymbol(), QgsCategorizedSymbolRendererV2Widget::changeCategorySymbol(), QgsGraduatedSymbolRendererV2Widget::changeGraduatedSymbol(), QgsCategorizedSymbolRendererV2Widget::changeSelectedSymbols(), QgsGraduatedSymbolRendererV2Widget::changeSelectedSymbols(), QgsSingleSymbolRendererV2Widget::changeSingleSymbol(), QgsSingleSymbolRendererV2::clone(), QgsGraduatedSymbolRendererV2::clone(), QgsCategorizedSymbolRendererV2::clone(), QgsComposerSymbolV2Item::clone(), QgsRuleBasedRendererV2::Rule::clone(), QgsGraduatedSymbolRendererV2::createRenderer(), QgsRendererRangeV2::operator=(), QgsRendererCategoryV2::operator=(), QgsRendererCategoryV2::QgsRendererCategoryV2(), QgsRendererRangeV2::QgsRendererRangeV2(), QgsRendererRulePropsDialog::QgsRendererRulePropsDialog(), QgsSingleSymbolRendererV2Widget::QgsSingleSymbolRendererV2Widget(), QgsRuleBasedRendererV2::refineRuleCategories(), QgsRuleBasedRendererV2::refineRuleRanges(), QgsRuleBasedRendererV2::refineRuleScales(), QgsSingleSymbolRendererV2::startRender(), QgsGraduatedSymbolRendererV2::startRender(), QgsCategorizedSymbolRendererV2::startRender(), QgsStyleV2::symbol(), QgsGraduatedSymbolRendererV2::updateColorRamp(), QgsCategorizedSymbolRendererV2::updateSymbols(), QgsGraduatedSymbolRendererV2::updateSymbols(), QgsCategorizedSymbolRendererV2Widget::updateUiFromRenderer(), and QgsGraduatedSymbolRendererV2Widget::updateUiFromRenderer().

bool QgsSymbolV2::deleteSymbolLayer ( int  index)

delete symbol layer at specified index

Definition at line 183 of file qgssymbolv2.cpp.

References mLayers.

Referenced by QgsSymbolsListWidget::setSymbolFromStyle().

bool QgsSymbolV2::insertSymbolLayer ( int  index,
QgsSymbolLayerV2 layer 
)

insert symbol layer to specified index

Definition at line 161 of file qgssymbolv2.cpp.

References isSymbolLayerCompatible(), mLayers, and QgsSymbolLayerV2::type().

Referenced by QgsSymbolV2SelectorDialog::moveLayerByOffset().

check whether a symbol layer type can be used within the symbol (marker-marker, line-line, fill-fill/line)

Note:
added in 1.7

Definition at line 151 of file qgssymbolv2.cpp.

References Fill, Line, and mType.

Referenced by appendSymbolLayer(), changeSymbolLayer(), insertSymbolLayer(), and QgsSymbolV2().

int QgsSymbolV2::renderHints ( ) const [inline]
Note:
added in 1.5

Definition at line 127 of file qgssymbolv2.h.

remove symbol layer from the list and return pointer to it

Definition at line 194 of file qgssymbolv2.cpp.

References mLayers.

Referenced by QgsSymbolV2SelectorDialog::moveLayerByOffset(), QgsSymbolV2SelectorDialog::removeLayer(), and QgsSymbolsListWidget::setSymbolFromStyle().


Member Data Documentation


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines