QGIS/python/core/diagram/qgsdiagram.sip
2017-09-11 21:55:20 +10:00

141 lines
4.9 KiB
Plaintext

/************************************************************************
* This file has been generated automatically from *
* *
* src/core/diagram/qgsdiagram.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/
class QgsDiagram
{
%Docstring
Base class for all diagram types*
%End
%TypeHeaderCode
#include "qgsdiagram.h"
%End
public:
virtual ~QgsDiagram();
virtual QgsDiagram *clone() const = 0 /Factory/;
%Docstring
Returns an instance that is equivalent to this one
.. versionadded:: 2.4
:rtype: QgsDiagram
%End
void clearCache();
QgsExpression *getExpression( const QString &expression, const QgsExpressionContext &context );
%Docstring
Returns a prepared expression for the specified context.
\param expression expression string
\param context expression context
.. versionadded:: 2.12
:rtype: QgsExpression
%End
virtual void renderDiagram( const QgsFeature &feature, QgsRenderContext &c, const QgsDiagramSettings &s, QPointF position ) = 0;
%Docstring
Draws the diagram at the given position (in pixel coordinates)
%End
virtual QString diagramName() const = 0;
%Docstring
Get a descriptive name for this diagram type.
:rtype: str
%End
virtual QSizeF diagramSize( const QgsAttributes &attributes, const QgsRenderContext &c, const QgsDiagramSettings &s ) = 0;
%Docstring
Returns the size in map units the diagram will use to render.
:rtype: QSizeF
%End
virtual QSizeF diagramSize( const QgsFeature &feature, const QgsRenderContext &c, const QgsDiagramSettings &s, const QgsDiagramInterpolationSettings &is ) = 0;
%Docstring
Returns the size in map units the diagram will use to render. Interpolate size
:rtype: QSizeF
%End
virtual double legendSize( double value, const QgsDiagramSettings &s, const QgsDiagramInterpolationSettings &is ) const = 0;
%Docstring
Returns the size of the legend item for the diagram corresponding to a specified value.
\param value value to return legend item size for
\param s diagram settings
\param is interpolation settings
.. versionadded:: 2.16
:rtype: float
%End
protected:
QgsDiagram();
%Docstring
Constructor for QgsDiagram.
%End
QgsDiagram( const QgsDiagram &other );
void setPenWidth( QPen &pen, const QgsDiagramSettings &s, const QgsRenderContext &c );
%Docstring
Changes the pen width to match the current settings and rendering context
\param pen The pen to modify
\param s The settings that specify the pen width
\param c The rendering specifying the proper scale units for pixel conversion
%End
QSizeF sizePainterUnits( QSizeF size, const QgsDiagramSettings &s, const QgsRenderContext &c );
%Docstring
Calculates a size to match the current settings and rendering context
\param size The size to convert
\param s The settings that specify the size type
\param c The rendering specifying the proper scale units for pixel conversion
:return: The converted size for rendering
:rtype: QSizeF
%End
double sizePainterUnits( double l, const QgsDiagramSettings &s, const QgsRenderContext &c );
%Docstring
Calculates a length to match the current settings and rendering context
\param l The length to convert
\param s Unused
\param c The rendering specifying the proper scale units for pixel conversion
:return: The converted length for rendering
:rtype: float
%End
QFont scaledFont( const QgsDiagramSettings &s, const QgsRenderContext &c );
%Docstring
Calculates a size to match the current settings and rendering context
\param s The settings that contain the font size and size type
\param c The rendering specifying the proper scale units for pixel conversion
:return: The properly scaled font for rendering
:rtype: QFont
%End
QSizeF sizeForValue( double value, const QgsDiagramSettings &s, const QgsDiagramInterpolationSettings &is ) const;
%Docstring
Returns the scaled size of a diagram for a value, respecting the specified diagram interpolation settings.
\param value value to calculate corresponding circular size for
\param s diagram settings
\param is interpolation settings
.. versionadded:: 2.16
:rtype: QSizeF
%End
};
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/diagram/qgsdiagram.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/