mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-11-04 00:04:25 -05:00 
			
		
		
		
	copy/= operators or making them private This revealed (and fixes) some issues, including a potential crash using server access control (refs #13919), and a potential crash with diagrams
		
			
				
	
	
		
			161 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			161 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
 | 
						|
class QgsRenderContext
 | 
						|
{
 | 
						|
 | 
						|
%TypeHeaderCode
 | 
						|
#include <qgsrendercontext.h>
 | 
						|
%End
 | 
						|
 | 
						|
  public:
 | 
						|
    QgsRenderContext();
 | 
						|
    QgsRenderContext( const QgsRenderContext& rh );
 | 
						|
    ~QgsRenderContext();
 | 
						|
 | 
						|
    //! Enumeration of flags that affect rendering operations
 | 
						|
    enum Flag
 | 
						|
    {
 | 
						|
      DrawEditingInfo,  //!< Enable drawing of vertex markers for layers in editing mode
 | 
						|
      ForceVectorOutput,  //!< Vector graphics should not be cached and drawn as raster images
 | 
						|
      UseAdvancedEffects,  //!< Enable layer transparency and blending effects
 | 
						|
      UseRenderingOptimization, //!< Enable vector simplification and other rendering optimizations
 | 
						|
      DrawSelection,  //!< Whether vector selections should be shown in the rendered map
 | 
						|
      DrawSymbolBounds,  //!< Draw bounds of symbols (for debugging/testing)
 | 
						|
      RenderMapTile
 | 
						|
    };
 | 
						|
    typedef QFlags<QgsRenderContext::Flag> Flags;
 | 
						|
 | 
						|
    //! Set combination of flags that will be used for rendering
 | 
						|
    void setFlags( const QgsRenderContext::Flags& flags );
 | 
						|
    //! Enable or disable a particular flag (other flags are not affected)
 | 
						|
    void setFlag( Flag flag, bool on = true );
 | 
						|
    //! Return combination of flags used for rendering
 | 
						|
    Flags flags() const;
 | 
						|
    //! Check whether a particular flag is enabled
 | 
						|
    bool testFlag( Flag flag ) const;
 | 
						|
 | 
						|
    //! create initialized QgsRenderContext instance from given QgsMapSettings
 | 
						|
    //! @note added in 2.4
 | 
						|
    static QgsRenderContext fromMapSettings( const QgsMapSettings& mapSettings );
 | 
						|
 | 
						|
    //getters
 | 
						|
 | 
						|
    QPainter* painter();
 | 
						|
    const QPainter* constPainter() const;
 | 
						|
 | 
						|
    const QgsCoordinateTransform* coordinateTransform() const;
 | 
						|
 | 
						|
    const QgsRectangle& extent() const;
 | 
						|
 | 
						|
    const QgsMapToPixel& mapToPixel() const;
 | 
						|
 | 
						|
    double scaleFactor() const;
 | 
						|
 | 
						|
    double rasterScaleFactor() const;
 | 
						|
 | 
						|
    bool renderingStopped() const;
 | 
						|
 | 
						|
    bool forceVectorOutput() const;
 | 
						|
 | 
						|
    /** Returns true if advanced effects such as blend modes such be used */
 | 
						|
    bool useAdvancedEffects() const;
 | 
						|
 | 
						|
    /** Used to enable or disable advanced effects such as blend modes */
 | 
						|
    void setUseAdvancedEffects( bool enabled );
 | 
						|
 | 
						|
    bool drawEditingInformation() const;
 | 
						|
 | 
						|
    double rendererScale() const;
 | 
						|
 | 
						|
    QgsLabelingEngineInterface* labelingEngine();
 | 
						|
 | 
						|
    QColor selectionColor() const;
 | 
						|
 | 
						|
    /** Returns true if vector selections should be shown in the rendered map
 | 
						|
     * @returns true if selections should be shown
 | 
						|
     * @see setShowSelection
 | 
						|
     * @see selectionColor
 | 
						|
     * @note Added in QGIS v2.4
 | 
						|
    */
 | 
						|
    bool showSelection() const;
 | 
						|
 | 
						|
    //setters
 | 
						|
 | 
						|
    /** Sets coordinate transformation. QgsRenderContext does not take ownership*/
 | 
						|
    void setCoordinateTransform( const QgsCoordinateTransform* t );
 | 
						|
    void setMapToPixel( const QgsMapToPixel& mtp );
 | 
						|
    void setExtent( const QgsRectangle& extent );
 | 
						|
 | 
						|
    void setDrawEditingInformation( bool b );
 | 
						|
 | 
						|
    void setRenderingStopped( bool stopped );
 | 
						|
    void setScaleFactor( double factor );
 | 
						|
    void setRasterScaleFactor( double factor );
 | 
						|
    void setRendererScale( double scale );
 | 
						|
    void setPainter( QPainter* p );
 | 
						|
 | 
						|
    void setForceVectorOutput( bool force );
 | 
						|
 | 
						|
    void setLabelingEngine( QgsLabelingEngineInterface* iface );
 | 
						|
    void setSelectionColor( const QColor& color );
 | 
						|
 | 
						|
    /** Sets whether vector selections should be shown in the rendered map
 | 
						|
     * @param showSelection set to true if selections should be shown
 | 
						|
     * @see showSelection
 | 
						|
     * @see setSelectionColor
 | 
						|
     * @note Added in QGIS v2.4
 | 
						|
    */
 | 
						|
    void setShowSelection( const bool showSelection );
 | 
						|
 | 
						|
    /** Returns true if the rendering optimization (geometry simplification) can be executed*/
 | 
						|
    bool useRenderingOptimization() const;
 | 
						|
 | 
						|
    void setUseRenderingOptimization( bool enabled );
 | 
						|
 | 
						|
    //! Added in QGIS v2.4
 | 
						|
    const QgsVectorSimplifyMethod& vectorSimplifyMethod() const;
 | 
						|
    void setVectorSimplifyMethod( const QgsVectorSimplifyMethod& simplifyMethod );
 | 
						|
 | 
						|
    /** Sets the expression context. This context is used for all expression evaluation
 | 
						|
     * associated with this render context.
 | 
						|
     * @see expressionContext()
 | 
						|
     * @note added in QGIS 2.12
 | 
						|
     */
 | 
						|
    void setExpressionContext( const QgsExpressionContext& context );
 | 
						|
 | 
						|
    /** Gets the expression context. This context should be used for all expression evaluation
 | 
						|
     * associated with this render context.
 | 
						|
     * @see setExpressionContext()
 | 
						|
     * @note added in QGIS 2.12
 | 
						|
     */
 | 
						|
    QgsExpressionContext& expressionContext();
 | 
						|
 | 
						|
    /** Gets the expression context (const version). This context should be used for all expression evaluation
 | 
						|
     * associated with this render context.
 | 
						|
     * @see setExpressionContext()
 | 
						|
     * @note added in QGIS 2.12
 | 
						|
     * @note not available in Python bindings
 | 
						|
     */
 | 
						|
    //const QgsExpressionContext& expressionContext() const;
 | 
						|
 | 
						|
    /** Returns pointer to the unsegmentized geometry
 | 
						|
        @return the geometry*/
 | 
						|
    const QgsAbstractGeometryV2* geometry() const;
 | 
						|
    /** Sets pointer to original (unsegmentized) geometry
 | 
						|
        @geometry the geometry*/
 | 
						|
    void setGeometry( const QgsAbstractGeometryV2* geometry );
 | 
						|
 | 
						|
    /** Set a filter feature provider used for additional filtering of rendered features.
 | 
						|
     * @param ffp the filter feature provider
 | 
						|
     * @note added in QGIS 2.14
 | 
						|
     * @see featureFilterProvider()
 | 
						|
     */
 | 
						|
    void setFeatureFilterProvider( const QgsFeatureFilterProvider* ffp );
 | 
						|
 | 
						|
    /** Get the filter feature provider used for additional filtering of rendered features.
 | 
						|
     * @return the filter feature provider
 | 
						|
     * @note added in QGIS 2.14
 | 
						|
     * @see setFeatureFilterProvider()
 | 
						|
     */
 | 
						|
    const QgsFeatureFilterProvider* featureFilterProvider() const;
 | 
						|
};
 |