Skip to content

Commit

Permalink
PyQGIS: added missing conversion to QgsRenderer subclasses, added few…
Browse files Browse the repository at this point in the history
… missing methods

git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@12672 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
wonder committed Jan 5, 2010
1 parent cae7b9a commit ec0cf0c
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 0 deletions.
24 changes: 24 additions & 0 deletions python/core/qgsrenderer.sip
Expand Up @@ -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
Expand Down Expand Up @@ -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 );

};

1 change: 1 addition & 0 deletions python/core/qgssinglesymbolrenderer.sip
Expand Up @@ -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*/
Expand Down

0 comments on commit ec0cf0c

Please sign in to comment.