mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-10-31 00:06:02 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			945 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			945 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /************************************************************************
 | |
|  * This file has been generated automatically from                      *
 | |
|  *                                                                      *
 | |
|  * src/core/qgsdiagramrenderer.h                                        *
 | |
|  *                                                                      *
 | |
|  * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 | |
|  ************************************************************************/
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| class QgsDiagramLayerSettings
 | |
| {
 | |
| %Docstring
 | |
| Stores the settings for rendering of all diagrams for a layer.
 | |
| 
 | |
| QgsDiagramSettings stores the settings related to rendering the individual diagrams themselves, while
 | |
| QgsDiagramLayerSettings stores settings which control how ALL diagrams within a layer are rendered.
 | |
| %End
 | |
| 
 | |
| %TypeHeaderCode
 | |
| #include "qgsdiagramrenderer.h"
 | |
| %End
 | |
|   public:
 | |
| 
 | |
|     enum Placement
 | |
|     {
 | |
|       AroundPoint,
 | |
|       OverPoint,
 | |
|       Line,
 | |
|       Curved,
 | |
|       Horizontal,
 | |
|       Free
 | |
|     };
 | |
| 
 | |
|     enum LinePlacementFlag
 | |
|     {
 | |
|       OnLine,
 | |
|       AboveLine,
 | |
|       BelowLine,
 | |
|       MapOrientation,
 | |
|     };
 | |
|     typedef QFlags<QgsDiagramLayerSettings::LinePlacementFlag> LinePlacementFlags;
 | |
| 
 | |
| 
 | |
|     enum Property
 | |
|     {
 | |
|       BackgroundColor,
 | |
|       StrokeColor,
 | |
|       StrokeWidth,
 | |
|       PositionX,
 | |
|       PositionY,
 | |
|       Distance,
 | |
|       Priority,
 | |
|       ZIndex,
 | |
|       IsObstacle,
 | |
|       Show,
 | |
|       AlwaysShow,
 | |
|       StartAngle,
 | |
|     };
 | |
| 
 | |
|     static const QgsPropertiesDefinition &propertyDefinitions();
 | |
| %Docstring
 | |
| Returns the diagram property definitions.
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
|     QgsDiagramLayerSettings();
 | |
| %Docstring
 | |
| Constructor for QgsDiagramLayerSettings.
 | |
| %End
 | |
| 
 | |
|     QgsDiagramLayerSettings( const QgsDiagramLayerSettings &rh );
 | |
| %Docstring
 | |
| Copy constructor
 | |
| %End
 | |
| 
 | |
| 
 | |
|     ~QgsDiagramLayerSettings();
 | |
| 
 | |
|     Placement placement() const;
 | |
| %Docstring
 | |
| Returns the diagram placement.
 | |
| 
 | |
| .. seealso:: :py:func:`setPlacement`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setPlacement( Placement value );
 | |
| %Docstring
 | |
| Sets the diagram placement.
 | |
| 
 | |
| :param value: placement value
 | |
| 
 | |
| .. seealso:: :py:func:`placement`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     LinePlacementFlags linePlacementFlags() const;
 | |
| %Docstring
 | |
| Returns the diagram placement flags. These are only used if the diagram placement
 | |
| is set to a line type.
 | |
| 
 | |
| .. seealso:: :py:func:`setLinePlacementFlags`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setLinePlacementFlags( LinePlacementFlags flags );
 | |
| %Docstring
 | |
| Sets the the diagram placement flags. These are only used if the diagram placement
 | |
| is set to a line type.
 | |
| 
 | |
| :param flags: placement value
 | |
| 
 | |
| .. seealso:: :py:func:`linePlacementFlags`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     int priority() const;
 | |
| %Docstring
 | |
| Returns the diagram priority.
 | |
| 
 | |
| :return: diagram priority, where 0 = low and 10 = high
 | |
| 
 | |
| .. note::
 | |
| 
 | |
|    placement priority is shared with labeling, so diagrams with a high priority may displace labels
 | |
|    and vice-versa
 | |
| 
 | |
| .. seealso:: :py:func:`setPriority`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setPriority( int value );
 | |
| %Docstring
 | |
| Sets the diagram priority.
 | |
| 
 | |
| :param value: priority, where 0 = low and 10 = high
 | |
| 
 | |
| .. seealso:: :py:func:`priority`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     double zIndex() const;
 | |
| %Docstring
 | |
| Returns the diagram z-index. Diagrams (or labels) with a higher z-index are drawn over diagrams
 | |
| with a lower z-index.
 | |
| 
 | |
| .. note::
 | |
| 
 | |
|    z-index ordering is shared with labeling, so diagrams with a high z-index may be drawn over labels
 | |
|    with a low z-index and vice-versa
 | |
| 
 | |
| .. seealso:: :py:func:`setZIndex`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setZIndex( double index );
 | |
| %Docstring
 | |
| Sets the diagram z-index. Diagrams (or labels) with a higher z-index are drawn over diagrams
 | |
| with a lower z-index.
 | |
| 
 | |
| :param index: diagram z-index
 | |
| 
 | |
| .. seealso:: :py:func:`zIndex`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     bool isObstacle() const;
 | |
| %Docstring
 | |
| Returns whether the feature associated with a diagram acts as an obstacle for other labels or diagrams.
 | |
| 
 | |
| .. seealso:: :py:func:`setIsObstacle`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setIsObstacle( bool isObstacle );
 | |
| %Docstring
 | |
| Sets whether the feature associated with a diagram acts as an obstacle for other labels or diagrams.
 | |
| 
 | |
| :param isObstacle: set to ``True`` for feature to act as obstacle
 | |
| 
 | |
| .. seealso:: :py:func:`isObstacle`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     double distance() const;
 | |
| %Docstring
 | |
| Returns the distance between the diagram and the feature (in mm).
 | |
| 
 | |
| .. seealso:: :py:func:`setDistance`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setDistance( double distance );
 | |
| %Docstring
 | |
| Sets the distance between the diagram and the feature.
 | |
| 
 | |
| :param distance: distance in mm
 | |
| 
 | |
| .. seealso:: :py:func:`distance`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     QgsDiagramRenderer *renderer();
 | |
| %Docstring
 | |
| Returns the diagram renderer associated with the layer.
 | |
| 
 | |
| .. seealso:: :py:func:`setRenderer`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
| 
 | |
|     void setRenderer( QgsDiagramRenderer *diagramRenderer /Transfer/ );
 | |
| %Docstring
 | |
| Sets the diagram renderer associated with the layer.
 | |
| 
 | |
| :param diagramRenderer: diagram renderer. Ownership is transferred to the object.
 | |
| 
 | |
| .. seealso:: :py:func:`renderer`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     QgsCoordinateTransform coordinateTransform() const;
 | |
| %Docstring
 | |
| Returns the coordinate transform associated with the layer, or an
 | |
| invalid transform if no transformation is required.
 | |
| 
 | |
| .. seealso:: :py:func:`setCoordinateTransform`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setCoordinateTransform( const QgsCoordinateTransform &transform );
 | |
| %Docstring
 | |
| Sets the coordinate transform associated with the layer.
 | |
| 
 | |
| :param transform: coordinate transform. Ownership is transferred to the object.
 | |
| 
 | |
| .. seealso:: :py:func:`coordinateTransform`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     bool showAllDiagrams() const;
 | |
| %Docstring
 | |
| Returns whether the layer should show all diagrams, including overlapping diagrams
 | |
| 
 | |
| .. seealso:: :py:func:`setShowAllDiagrams`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setShowAllDiagrams( bool showAllDiagrams );
 | |
| %Docstring
 | |
| Sets whether the layer should show all diagrams, including overlapping diagrams
 | |
| 
 | |
| :param showAllDiagrams: set to ``True`` to show all diagrams
 | |
| 
 | |
| .. seealso:: :py:func:`showAllDiagrams`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void readXml( const QDomElement &elem );
 | |
| %Docstring
 | |
| Reads the diagram settings from a DOM element.
 | |
| 
 | |
| .. seealso:: :py:func:`writeXml`
 | |
| %End
 | |
| 
 | |
|     void writeXml( QDomElement &layerElem, QDomDocument &doc ) const;
 | |
| %Docstring
 | |
| Writes the diagram settings to a DOM element.
 | |
| 
 | |
| .. seealso:: :py:func:`readXml`
 | |
| %End
 | |
| 
 | |
|     bool prepare( const QgsExpressionContext &context = QgsExpressionContext() ) const;
 | |
| %Docstring
 | |
| Prepares the diagrams for a specified expression context. Calling prepare before rendering
 | |
| multiple diagrams allows precalculation of expensive setup tasks such as parsing expressions.
 | |
| Returns ``True`` if preparation was successful.
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
|     QSet< QString > referencedFields( const QgsExpressionContext &context = QgsExpressionContext() ) const;
 | |
| %Docstring
 | |
| Returns the set of any fields referenced by the layer's diagrams.
 | |
| 
 | |
| :param context: expression context the diagrams will be drawn using
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     QgsPropertyCollection &dataDefinedProperties();
 | |
| %Docstring
 | |
| Returns a reference to the diagram's property collection, used for data defined overrides.
 | |
| 
 | |
| .. seealso:: :py:func:`setDataDefinedProperties`
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
| 
 | |
|     void setDataDefinedProperties( const QgsPropertyCollection &collection );
 | |
| %Docstring
 | |
| Sets the diagram's property collection, used for data defined overrides.
 | |
| 
 | |
| :param collection: property collection. Existing properties will be replaced.
 | |
| 
 | |
| .. seealso:: :py:func:`dataDefinedProperties`
 | |
| 
 | |
| .. seealso:: Property
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
| };
 | |
| 
 | |
| 
 | |
| class QgsDiagramSettings
 | |
| {
 | |
| %Docstring
 | |
| Stores the settings for rendering a single diagram.
 | |
| 
 | |
| QgsDiagramSettings stores the settings related to rendering the individual diagrams themselves, while
 | |
| QgsDiagramLayerSettings stores settings which control how ALL diagrams within a layer are rendered.
 | |
| %End
 | |
| 
 | |
| %TypeHeaderCode
 | |
| #include "qgsdiagramrenderer.h"
 | |
| %End
 | |
|   public:
 | |
| 
 | |
|     enum LabelPlacementMethod
 | |
|     {
 | |
|       Height,
 | |
|       XHeight
 | |
|     };
 | |
| 
 | |
|     enum DiagramOrientation
 | |
|     {
 | |
|       Up,
 | |
|       Down,
 | |
|       Left,
 | |
|       Right
 | |
|     };
 | |
| 
 | |
|     enum Direction
 | |
|     {
 | |
|       Clockwise,
 | |
|       Counterclockwise,
 | |
|     };
 | |
| 
 | |
|     QgsDiagramSettings();
 | |
| %Docstring
 | |
| Constructor for QgsDiagramSettings
 | |
| %End
 | |
|     ~QgsDiagramSettings();
 | |
| 
 | |
|     QgsDiagramSettings( const QgsDiagramSettings &other );
 | |
| %Docstring
 | |
| Copy constructor
 | |
| %End
 | |
| 
 | |
| 
 | |
|     bool enabled;
 | |
|     QFont font;
 | |
|     QList< QColor > categoryColors;
 | |
|     QList< QString > categoryAttributes;
 | |
|     QList< QString > categoryLabels;
 | |
|     QSizeF size; //size
 | |
| 
 | |
|     QgsUnitTypes::RenderUnit sizeType;
 | |
| 
 | |
|     QgsMapUnitScale sizeScale;
 | |
| 
 | |
|     QgsUnitTypes::RenderUnit lineSizeUnit;
 | |
| 
 | |
|     QgsMapUnitScale lineSizeScale;
 | |
| 
 | |
|     QColor backgroundColor;
 | |
|     QColor penColor;
 | |
|     double penWidth;
 | |
|     LabelPlacementMethod labelPlacementMethod;
 | |
|     DiagramOrientation diagramOrientation;
 | |
|     double barWidth;
 | |
| 
 | |
|     double opacity;
 | |
| 
 | |
|     bool scaleByArea;
 | |
| 
 | |
|     double rotationOffset;
 | |
| 
 | |
|     bool scaleBasedVisibility;
 | |
| 
 | |
|     double maximumScale;
 | |
| 
 | |
|     double minimumScale;
 | |
| 
 | |
|     double minimumSize;
 | |
| 
 | |
|     double spacing() const;
 | |
| %Docstring
 | |
| Returns the spacing between diagram contents.
 | |
| 
 | |
| Spacing units can be retrieved by calling :py:func:`~QgsDiagramSettings.spacingUnit`.
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacing`
 | |
| 
 | |
| .. seealso:: :py:func:`spacingUnit`
 | |
| 
 | |
| .. seealso:: :py:func:`spacingMapUnitScale`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void setSpacing( double spacing );
 | |
| %Docstring
 | |
| Sets the ``spacing`` between diagram contents.
 | |
| 
 | |
| Spacing units are set via :py:func:`~QgsDiagramSettings.setSpacingUnit`.
 | |
| 
 | |
| .. seealso:: :py:func:`spacing`
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacingUnit`
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacingMapUnitScale`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void setSpacingUnit( QgsUnitTypes::RenderUnit unit );
 | |
| %Docstring
 | |
| Sets the ``unit`` for the content spacing.
 | |
| 
 | |
| .. seealso:: :py:func:`spacingUnit`
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacing`
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacingMapUnitScale`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     QgsUnitTypes::RenderUnit spacingUnit() const;
 | |
| %Docstring
 | |
| Returns the units for the content spacing.
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacingUnit`
 | |
| 
 | |
| .. seealso:: :py:func:`spacing`
 | |
| 
 | |
| .. seealso:: :py:func:`spacingMapUnitScale`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void setSpacingMapUnitScale( const QgsMapUnitScale &scale );
 | |
| %Docstring
 | |
| Sets the map unit ``scale`` for the content spacing.
 | |
| 
 | |
| .. seealso:: :py:func:`spacingMapUnitScale`
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacing`
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacingUnit`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     const QgsMapUnitScale &spacingMapUnitScale() const;
 | |
| %Docstring
 | |
| Returns the map unit scale for the content spacing.
 | |
| 
 | |
| .. seealso:: :py:func:`setSpacingMapUnitScale`
 | |
| 
 | |
| .. seealso:: :py:func:`spacing`
 | |
| 
 | |
| .. seealso:: :py:func:`spacingUnit`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     Direction direction() const;
 | |
| %Docstring
 | |
| Returns the chart's angular direction.
 | |
| 
 | |
| .. seealso:: :py:func:`setDirection`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void setDirection( Direction direction );
 | |
| %Docstring
 | |
| Sets the chart's angular ``direction``.
 | |
| 
 | |
| .. seealso:: :py:func:`direction`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void readXml( const QDomElement &elem, const QgsReadWriteContext &context = QgsReadWriteContext() );
 | |
| %Docstring
 | |
| Reads diagram settings from XML
 | |
| %End
 | |
|     void writeXml( QDomElement &rendererElem, QDomDocument &doc, const QgsReadWriteContext &context = QgsReadWriteContext() ) const;
 | |
| %Docstring
 | |
| Writes diagram settings to XML
 | |
| %End
 | |
| 
 | |
|     QList< QgsLayerTreeModelLegendNode * > legendItems( QgsLayerTreeLayer *nodeLayer ) const /Factory/;
 | |
| %Docstring
 | |
| Returns list of legend nodes for the diagram
 | |
| 
 | |
| .. note::
 | |
| 
 | |
|    caller is responsible for deletion of :py:class:`QgsLayerTreeModelLegendNodes`
 | |
| 
 | |
| .. versionadded:: 2.10
 | |
| %End
 | |
| 
 | |
|     QgsLineSymbol *axisLineSymbol() const;
 | |
| %Docstring
 | |
| Returns the line symbol to use for rendering axis in diagrams.
 | |
| 
 | |
| .. seealso:: :py:func:`setAxisLineSymbol`
 | |
| 
 | |
| .. seealso:: :py:func:`showAxis`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void setAxisLineSymbol( QgsLineSymbol *symbol /Transfer/ );
 | |
| %Docstring
 | |
| Sets the line ``symbol`` to use for rendering axis in diagrams.
 | |
| 
 | |
| Ownership of ``symbol`` is transferred to the settings.
 | |
| 
 | |
| .. seealso:: :py:func:`axisLineSymbol`
 | |
| 
 | |
| .. seealso:: :py:func:`setShowAxis`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     bool showAxis() const;
 | |
| %Docstring
 | |
| Returns ``True`` if the diagram axis should be shown.
 | |
| 
 | |
| .. seealso:: :py:func:`setShowAxis`
 | |
| 
 | |
| .. seealso:: :py:func:`axisLineSymbol`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void setShowAxis( bool showAxis );
 | |
| %Docstring
 | |
| Sets whether the diagram axis should be shown.
 | |
| 
 | |
| .. seealso:: :py:func:`showAxis`
 | |
| 
 | |
| .. seealso:: :py:func:`setAxisLineSymbol`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     QgsPaintEffect *paintEffect() const;
 | |
| %Docstring
 | |
| Returns the paint effect to use while rendering diagrams.
 | |
| 
 | |
| .. seealso:: :py:func:`setPaintEffect`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     void setPaintEffect( QgsPaintEffect *effect /Transfer/ );
 | |
| %Docstring
 | |
| Sets the paint ``effect`` to use while rendering diagrams.
 | |
| 
 | |
| Ownership of ``effect`` is transferred to the settings.
 | |
| 
 | |
| .. seealso:: :py:func:`paintEffect`
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
| };
 | |
| 
 | |
| class QgsDiagramInterpolationSettings
 | |
| {
 | |
| %Docstring
 | |
| Additional diagram settings for interpolated size rendering.
 | |
| %End
 | |
| 
 | |
| %TypeHeaderCode
 | |
| #include "qgsdiagramrenderer.h"
 | |
| %End
 | |
|   public:
 | |
|     QSizeF lowerSize;
 | |
|     QSizeF upperSize;
 | |
|     double lowerValue;
 | |
|     double upperValue;
 | |
| 
 | |
|     QString classificationField;
 | |
| 
 | |
|     QString classificationAttributeExpression;
 | |
|     bool classificationAttributeIsExpression;
 | |
| };
 | |
| 
 | |
| 
 | |
| 
 | |
| class QgsDiagramRenderer
 | |
| {
 | |
| %Docstring
 | |
| Evaluates and returns the diagram settings relating to a diagram for a specific feature.
 | |
| %End
 | |
| 
 | |
| %TypeHeaderCode
 | |
| #include "qgsdiagramrenderer.h"
 | |
| %End
 | |
| %ConvertToSubClassCode
 | |
|     if ( sipCpp->rendererName() == QStringLiteral( "SingleCategory" ) )
 | |
|       sipType = sipType_QgsSingleCategoryDiagramRenderer;
 | |
|     else if ( sipCpp->rendererName() == QStringLiteral( "LinearlyInterpolated" ) )
 | |
|       sipType = sipType_QgsLinearlyInterpolatedDiagramRenderer;
 | |
|     else
 | |
|       sipType = NULL;
 | |
| %End
 | |
|   public:
 | |
| 
 | |
|     QgsDiagramRenderer();
 | |
| %Docstring
 | |
| Constructor for QgsDiagramRenderer.
 | |
| %End
 | |
|     virtual ~QgsDiagramRenderer();
 | |
| 
 | |
|     virtual QgsDiagramRenderer *clone() const = 0 /Factory/;
 | |
| %Docstring
 | |
| Returns new instance that is equivalent to this one
 | |
| 
 | |
| .. versionadded:: 2.4
 | |
| %End
 | |
| 
 | |
|     virtual QSizeF sizeMapUnits( const QgsFeature &feature, const QgsRenderContext &c ) const;
 | |
| %Docstring
 | |
| Returns size of the diagram for a feature in map units. Returns an invalid QSizeF in case of error
 | |
| %End
 | |
| 
 | |
|     virtual QString rendererName() const = 0;
 | |
| 
 | |
|     virtual QList<QString> diagramAttributes() const = 0;
 | |
| %Docstring
 | |
| Returns attribute indices needed for diagram rendering
 | |
| %End
 | |
| 
 | |
|     virtual QSet< QString > referencedFields( const QgsExpressionContext &context = QgsExpressionContext() ) const;
 | |
| %Docstring
 | |
| Returns the set of any fields required for diagram rendering
 | |
| 
 | |
| :param context: expression context the diagrams will be drawn using
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void renderDiagram( const QgsFeature &feature, QgsRenderContext &c, QPointF pos, const QgsPropertyCollection &properties = QgsPropertyCollection() ) const;
 | |
| %Docstring
 | |
| Renders the diagram for a specified feature at a specific position in the passed render context.
 | |
| %End
 | |
| 
 | |
|     void setDiagram( QgsDiagram *d /Transfer/ );
 | |
|     QgsDiagram *diagram() const;
 | |
| 
 | |
|     virtual QList<QgsDiagramSettings> diagramSettings() const = 0;
 | |
| %Docstring
 | |
| Returns list with all diagram settings in the renderer
 | |
| %End
 | |
| 
 | |
|     virtual void readXml( const QDomElement &elem, const QgsReadWriteContext &context ) = 0;
 | |
| %Docstring
 | |
| Reads diagram state from a DOM element. Subclasses should ensure that _readXml() is called
 | |
| by their readXml implementation to restore the general QgsDiagramRenderer settings.
 | |
| 
 | |
| .. seealso:: :py:func:`writeXml`
 | |
| %End
 | |
| 
 | |
|     virtual void writeXml( QDomElement &layerElem, QDomDocument &doc, const QgsReadWriteContext &context ) const = 0;
 | |
| %Docstring
 | |
| Writes diagram state to a DOM element. Subclasses should ensure that _writeXml() is called
 | |
| by their writeXml implementation to save the general QgsDiagramRenderer settings.
 | |
| 
 | |
| .. seealso:: :py:func:`readXml`
 | |
| %End
 | |
| 
 | |
|     virtual QList< QgsLayerTreeModelLegendNode * > legendItems( QgsLayerTreeLayer *nodeLayer ) const /Factory/;
 | |
| %Docstring
 | |
| Returns list of legend nodes for the diagram
 | |
| 
 | |
| .. note::
 | |
| 
 | |
|    caller is responsible for deletion of :py:class:`QgsLayerTreeModelLegendNodes`
 | |
| 
 | |
| .. versionadded:: 2.10
 | |
| %End
 | |
| 
 | |
|     bool attributeLegend() const;
 | |
| %Docstring
 | |
| Returns ``True`` if renderer will show legend items for diagram attributes.
 | |
| 
 | |
| .. seealso:: :py:func:`setAttributeLegend`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|     void setAttributeLegend( bool enabled );
 | |
| %Docstring
 | |
| Sets whether the renderer will show legend items for diagram attributes.
 | |
| 
 | |
| :param enabled: set to ``True`` to show diagram attribute legend
 | |
| 
 | |
| .. seealso:: :py:func:`attributeLegend`
 | |
| 
 | |
| .. versionadded:: 2.16
 | |
| %End
 | |
| 
 | |
|   protected:
 | |
|     QgsDiagramRenderer( const QgsDiagramRenderer &other );
 | |
| 
 | |
|     virtual bool diagramSettings( const QgsFeature &feature, const QgsRenderContext &c, QgsDiagramSettings &s ) const = 0;
 | |
| %Docstring
 | |
| Returns diagram settings for a feature (or ``False`` if the diagram for the feature is not to be rendered). Used internally within :py:func:`~QgsDiagramRenderer.renderDiagram`
 | |
| 
 | |
| :param feature: the feature
 | |
| :param c: render context
 | |
| :param s: out: diagram settings for the feature
 | |
| %End
 | |
| 
 | |
|     virtual QSizeF diagramSize( const QgsFeature &features, const QgsRenderContext &c ) const = 0;
 | |
| %Docstring
 | |
| Returns size of the diagram (in painter units) or an invalid size in case of error
 | |
| %End
 | |
| 
 | |
|     void convertSizeToMapUnits( QSizeF &size, const QgsRenderContext &context ) const;
 | |
| %Docstring
 | |
| Converts size from mm to map units
 | |
| %End
 | |
| 
 | |
|     static int dpiPaintDevice( const QPainter * );
 | |
| %Docstring
 | |
| Returns the paint device dpi (or -1 in case of error
 | |
| %End
 | |
| 
 | |
| 
 | |
|     void _readXml( const QDomElement &elem, const QgsReadWriteContext &context );
 | |
| %Docstring
 | |
| Reads internal QgsDiagramRenderer state from a DOM element.
 | |
| 
 | |
| .. seealso:: _writeXml
 | |
| %End
 | |
| 
 | |
|     void _writeXml( QDomElement &rendererElem, QDomDocument &doc, const QgsReadWriteContext &context ) const;
 | |
| %Docstring
 | |
| Writes internal QgsDiagramRenderer diagram state to a DOM element.
 | |
| 
 | |
| .. seealso:: _readXml
 | |
| %End
 | |
| 
 | |
| 
 | |
| };
 | |
| 
 | |
| class QgsSingleCategoryDiagramRenderer : QgsDiagramRenderer
 | |
| {
 | |
| %Docstring
 | |
| Renders the diagrams for all features with the same settings
 | |
| %End
 | |
| 
 | |
| %TypeHeaderCode
 | |
| #include "qgsdiagramrenderer.h"
 | |
| %End
 | |
|   public:
 | |
| 
 | |
|     QgsSingleCategoryDiagramRenderer();
 | |
| %Docstring
 | |
| Constructor for QgsSingleCategoryDiagramRenderer
 | |
| %End
 | |
| 
 | |
|     virtual QgsSingleCategoryDiagramRenderer *clone() const /Factory/;
 | |
| 
 | |
| 
 | |
|     virtual QString rendererName() const;
 | |
| 
 | |
|     virtual QList<QString> diagramAttributes() const;
 | |
| 
 | |
|     void setDiagramSettings( const QgsDiagramSettings &s );
 | |
| 
 | |
|     virtual QList<QgsDiagramSettings> diagramSettings() const;
 | |
| 
 | |
| 
 | |
|     virtual void readXml( const QDomElement &elem, const QgsReadWriteContext &context );
 | |
| 
 | |
|     virtual void writeXml( QDomElement &layerElem, QDomDocument &doc, const QgsReadWriteContext &context ) const;
 | |
| 
 | |
| 
 | |
|     virtual QList< QgsLayerTreeModelLegendNode * > legendItems( QgsLayerTreeLayer *nodeLayer ) const /Factory/;
 | |
| 
 | |
| 
 | |
|   protected:
 | |
|     virtual bool diagramSettings( const QgsFeature &feature, const QgsRenderContext &c, QgsDiagramSettings &s ) const;
 | |
| 
 | |
| 
 | |
|     virtual QSizeF diagramSize( const QgsFeature &, const QgsRenderContext &c ) const;
 | |
| 
 | |
| 
 | |
| };
 | |
| 
 | |
| class QgsLinearlyInterpolatedDiagramRenderer : QgsDiagramRenderer
 | |
| {
 | |
| 
 | |
| %TypeHeaderCode
 | |
| #include "qgsdiagramrenderer.h"
 | |
| %End
 | |
|   public:
 | |
|     QgsLinearlyInterpolatedDiagramRenderer();
 | |
|     ~QgsLinearlyInterpolatedDiagramRenderer();
 | |
| 
 | |
|     virtual QgsLinearlyInterpolatedDiagramRenderer *clone() const /Factory/;
 | |
| 
 | |
| 
 | |
|     virtual QList<QgsDiagramSettings> diagramSettings() const;
 | |
| 
 | |
| %Docstring
 | |
| Returns list with all diagram settings in the renderer
 | |
| %End
 | |
| 
 | |
|     void setDiagramSettings( const QgsDiagramSettings &s );
 | |
| 
 | |
|     virtual QList<QString> diagramAttributes() const;
 | |
| 
 | |
| 
 | |
|     virtual QSet< QString > referencedFields( const QgsExpressionContext &context = QgsExpressionContext() ) const;
 | |
| 
 | |
| 
 | |
|     virtual QString rendererName() const;
 | |
| 
 | |
|     void setLowerValue( double val );
 | |
|     double lowerValue() const;
 | |
| 
 | |
|     void setUpperValue( double val );
 | |
|     double upperValue() const;
 | |
| 
 | |
|     void setLowerSize( QSizeF s );
 | |
|     QSizeF lowerSize() const;
 | |
| 
 | |
|     void setUpperSize( QSizeF s );
 | |
|     QSizeF upperSize() const;
 | |
| 
 | |
|     QString classificationField() const;
 | |
| %Docstring
 | |
| Returns the field name used for interpolating the diagram size.
 | |
| 
 | |
| .. seealso:: :py:func:`setClassificationField`
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
|     void setClassificationField( const QString &field );
 | |
| %Docstring
 | |
| Sets the field name used for interpolating the diagram size.
 | |
| 
 | |
| .. seealso:: :py:func:`classificationField`
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
|     QString classificationAttributeExpression() const;
 | |
|     void setClassificationAttributeExpression( const QString &expression );
 | |
| 
 | |
|     bool classificationAttributeIsExpression() const;
 | |
|     void setClassificationAttributeIsExpression( bool isExpression );
 | |
| 
 | |
|     virtual void readXml( const QDomElement &elem, const QgsReadWriteContext &context );
 | |
| 
 | |
|     virtual void writeXml( QDomElement &layerElem, QDomDocument &doc, const QgsReadWriteContext &context ) const;
 | |
| 
 | |
| 
 | |
|     virtual QList< QgsLayerTreeModelLegendNode * > legendItems( QgsLayerTreeLayer *nodeLayer ) const /Factory/;
 | |
| 
 | |
| 
 | |
|     void setDataDefinedSizeLegend( QgsDataDefinedSizeLegend *settings /Transfer/ );
 | |
| %Docstring
 | |
| Configures appearance of legend. Takes ownership of the passed settings objects.
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
|     QgsDataDefinedSizeLegend *dataDefinedSizeLegend() const;
 | |
| %Docstring
 | |
| Returns configuration of appearance of legend. Will return ``None`` if no configuration has been set.
 | |
| 
 | |
| .. versionadded:: 3.0
 | |
| %End
 | |
| 
 | |
|   protected:
 | |
|     virtual bool diagramSettings( const QgsFeature &feature, const QgsRenderContext &c, QgsDiagramSettings &s ) const;
 | |
| 
 | |
| 
 | |
|     virtual QSizeF diagramSize( const QgsFeature &, const QgsRenderContext &c ) const;
 | |
| 
 | |
| 
 | |
|     QgsLinearlyInterpolatedDiagramRenderer( const QgsLinearlyInterpolatedDiagramRenderer &other );
 | |
| %Docstring
 | |
| Copy constructor
 | |
| %End
 | |
| 
 | |
| };
 | |
| 
 | |
| /************************************************************************
 | |
|  * This file has been generated automatically from                      *
 | |
|  *                                                                      *
 | |
|  * src/core/qgsdiagramrenderer.h                                        *
 | |
|  *                                                                      *
 | |
|  * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 | |
|  ************************************************************************/
 |