PyQGIS: added missing conversion to QgsRenderer subclasses, added few missing methods

git-svn-id: http://svn.osgeo.org/qgis/trunk@12672 c8812cc2-4d05-0410-92ff-de0c093fc19c
This commit is contained in:
wonder 2010-01-05 14:09:31 +00:00
parent 362de6b0f4
commit a9ae72243e
2 changed files with 25 additions and 0 deletions

View File

@ -4,13 +4,34 @@ class QgsRenderer
{
%TypeHeaderCode
#include <qgsrenderer.h>
#include <qgssinglesymbolrenderer.h>
#include <qgsuniquevaluerenderer.h>
#include <qgsgraduatedsymbolrenderer.h>
#include <qgscontinuouscolorrenderer.h>
%End
%ConvertToSubClassCode
if (dynamic_cast<QgsSingleSymbolRenderer*>(sipCpp) != NULL)
sipClass = sipClass_QgsSingleSymbolRenderer;
else if (dynamic_cast<QgsUniqueValueRenderer*>(sipCpp) != NULL)
sipClass = sipClass_QgsUniqueValueRenderer;
else if (dynamic_cast<QgsGraduatedSymbolRenderer*>(sipCpp) != NULL)
sipClass = sipClass_QgsGraduatedSymbolRenderer;
else if (dynamic_cast<QgsContinuousColorRenderer*>(sipCpp) != NULL)
sipClass = sipClass_QgsContinuousColorRenderer;
else
sipClass = 0;
%End
public:
/** Default ctor sets up selection color from project properties */
QgsRenderer();
/** Virtual destructor because we have virtual methods... */
virtual ~QgsRenderer();
/** Determines if a feature will be rendered or not
@param f a pointer to the feature to determine if rendering will happen*/
virtual bool willRenderFeature( QgsFeature *f );
/**A vector layer passes features to a renderer object to change the brush and pen of the qpainter
@param p the painter storing brush and pen
@param f a pointer to the feature to be rendered
@ -59,6 +80,9 @@ class QgsRenderer
/**Returns true if this renderer uses its own transparency settings, e.g. differentiated by classification.
This is a hint for QgsVectorLayer to not use the transparency setting on layer level in this cases*/
virtual bool usesTransparency() const;
/**Scales a brush to a given raster scale factor (e.g. for printing)*/
static void scaleBrush( QBrush& b, double rasterScaleFactor );
};

View File

@ -31,6 +31,7 @@ class QgsSingleSymbolRenderer : QgsRenderer
bool needsAttributes() const;
/**Returns an empty list, since no classification attributes are used*/
QList<int> classificationAttributes() const;
void updateSymbolAttributes();
/**Returns the renderers name*/
virtual QString name() const;
/**Returns a list containing mSymbol*/