|
| 1 | +class QgsInvertedPolygonRenderer : public QgsFeatureRendererV2 |
| 2 | +{ |
| 3 | +%TypeHeaderCode |
| 4 | +#include <qgsinvertedpolygonrenderer.h> |
| 5 | +%End |
| 6 | + public: |
| 7 | + |
| 8 | + /** Constructor |
| 9 | + * @param embeddedRenderer optional embeddedRenderer. If null, a default one will be assigned |
| 10 | + */ |
| 11 | + QgsInvertedPolygonRenderer( const QgsFeatureRendererV2* embeddedRenderer = 0 ); |
| 12 | + virtual ~QgsInvertedPolygonRenderer(); |
| 13 | + |
| 14 | + /** Used to clone this feature renderer.*/ |
| 15 | + virtual QgsFeatureRendererV2* clone(); |
| 16 | + |
| 17 | + virtual void startRender( QgsRenderContext& context, const QgsFields& fields ); |
| 18 | + |
| 19 | + /** Renders a given feature. |
| 20 | + * This will here collect features. The actual rendering will be postponed to stopRender() |
| 21 | + * @param feature the feature to render |
| 22 | + * @param context the rendering context |
| 23 | + * @param layer the symbol layer to render, if that makes sense |
| 24 | + * @param selected whether this feature has been selected (this will add decorations) |
| 25 | + * @param drawVertexMarker whether this feature has vertex markers (in edit mode usually) |
| 26 | + * @returns true if the rendering was ok |
| 27 | + */ |
| 28 | + virtual bool renderFeature( QgsFeature& feature, QgsRenderContext& context, int layer = -1, bool selected = false, bool drawVertexMarker = false ); |
| 29 | + |
| 30 | + /** |
| 31 | + * The actual rendering will take place here. |
| 32 | + * Features collected during renderFeature() are rendered using the embedded feature renderer |
| 33 | + */ |
| 34 | + virtual void stopRender( QgsRenderContext& context ); |
| 35 | + |
| 36 | + /** @returns a textual reprensation of the renderer */ |
| 37 | + virtual QString dump() const; |
| 38 | + |
| 39 | + /** Proxy that will call this method on the embedded renderer. */ |
| 40 | + virtual QList<QString> usedAttributes(); |
| 41 | + /** Proxy that will call this method on the embedded renderer. */ |
| 42 | + virtual int capabilities(); |
| 43 | + /** Proxy that will call this method on the embedded renderer. */ |
| 44 | + virtual QgsSymbolV2List symbols(); |
| 45 | + /** Proxy that will call this method on the embedded renderer. */ |
| 46 | + virtual QgsSymbolV2* symbolForFeature( QgsFeature& feature ); |
| 47 | + /** Proxy that will call this method on the embedded renderer. */ |
| 48 | + virtual QgsSymbolV2List symbolsForFeature( QgsFeature& feat ); |
| 49 | + /** Proxy that will call this method on the embedded renderer. */ |
| 50 | + virtual QgsLegendSymbologyList legendSymbologyItems( QSize iconSize ); |
| 51 | + /** Proxy that will call this method on the embedded renderer. */ |
| 52 | + virtual bool willRenderFeature( QgsFeature& feat ); |
| 53 | + |
| 54 | + /** Creates a renderer out of an XML, for loading*/ |
| 55 | + static QgsFeatureRendererV2* create( QDomElement& element ); |
| 56 | + |
| 57 | + /** Creates an XML representation of the renderer. Used for saving purpose |
| 58 | + * @param doc the XML document where to create the XML subtree |
| 59 | + * @returns the created XML subtree |
| 60 | + */ |
| 61 | + virtual QDomElement save( QDomDocument& doc ); |
| 62 | + |
| 63 | + /** sets the embedded renderer |
| 64 | + * @param subRenderer the embedded renderer (will be cloned) |
| 65 | + */ |
| 66 | + void setEmbeddedRenderer( const QgsFeatureRendererV2* subRenderer ); |
| 67 | + /** @returns the current embedded renderer |
| 68 | + */ |
| 69 | + const QgsFeatureRendererV2* embeddedRenderer() const; |
| 70 | +}; |
0 commit comments