mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-11-04 00:04:25 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			133 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
/************************************************************************
 | 
						|
 * This file has been generated automatically from                      *
 | 
						|
 *                                                                      *
 | 
						|
 * src/core/qgsmaphittest.h                                             *
 | 
						|
 *                                                                      *
 | 
						|
 * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 | 
						|
 ************************************************************************/
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
class QgsMapHitTest
 | 
						|
{
 | 
						|
%Docstring(signature="appended")
 | 
						|
Runs a hit test with given map settings.
 | 
						|
 | 
						|
Based on the hit test it returns which symbols will be visible on the
 | 
						|
map - this is useful for content based legend.
 | 
						|
%End
 | 
						|
 | 
						|
%TypeHeaderCode
 | 
						|
#include "qgsmaphittest.h"
 | 
						|
%End
 | 
						|
  public:
 | 
						|
    typedef QMap<QString, QString> LayerFilterExpression;
 | 
						|
 | 
						|
    QgsMapHitTest( const QgsMapSettings &settings, const QgsGeometry &polygon = QgsGeometry(), const QgsMapHitTest::LayerFilterExpression &layerFilterExpression = QgsMapHitTest::LayerFilterExpression() );
 | 
						|
%Docstring
 | 
						|
Constructor for QgsMapHitTest.
 | 
						|
 | 
						|
:param settings: Map settings used to evaluate symbols
 | 
						|
:param polygon: Polygon geometry to refine the hit test
 | 
						|
:param layerFilterExpression: Expression string for each layer id to
 | 
						|
                              evaluate in order to refine the symbol
 | 
						|
                              selection
 | 
						|
%End
 | 
						|
 | 
						|
    QgsMapHitTest( const QgsMapSettings &settings, const QgsMapHitTest::LayerFilterExpression &layerFilterExpression );
 | 
						|
%Docstring
 | 
						|
Constructor version used with only expressions to filter symbols (no
 | 
						|
extent or polygon intersection)
 | 
						|
%End
 | 
						|
 | 
						|
    QgsMapHitTest( const QgsLayerTreeFilterSettings &settings );
 | 
						|
%Docstring
 | 
						|
Constructor based off layer tree filter ``settings``.
 | 
						|
 | 
						|
.. versionadded:: 3.32
 | 
						|
%End
 | 
						|
 | 
						|
    void run();
 | 
						|
%Docstring
 | 
						|
Runs the map hit test
 | 
						|
%End
 | 
						|
 | 
						|
 | 
						|
 | 
						|
    QMap<QString, QList<QString>> resultsPy() const /PyName=results/;
 | 
						|
%Docstring
 | 
						|
Returns the hit test results, which are a map of layer ID to visible
 | 
						|
symbol legend keys.
 | 
						|
 | 
						|
.. versionadded:: 3.32
 | 
						|
%End
 | 
						|
 | 
						|
    bool symbolVisible( QgsSymbol *symbol, QgsVectorLayer *layer ) const;
 | 
						|
%Docstring
 | 
						|
Tests whether a symbol is visible for a specified layer.
 | 
						|
 | 
						|
:param symbol: symbol to find
 | 
						|
:param layer: vector layer
 | 
						|
 | 
						|
.. seealso:: :py:func:`legendKeyVisible`
 | 
						|
%End
 | 
						|
 | 
						|
    bool legendKeyVisible( const QString &ruleKey, QgsVectorLayer *layer ) const;
 | 
						|
%Docstring
 | 
						|
Tests whether a given legend key is visible for a specified layer.
 | 
						|
 | 
						|
:param ruleKey: legend rule key
 | 
						|
:param layer: vector layer
 | 
						|
 | 
						|
.. seealso:: :py:func:`symbolVisible`
 | 
						|
%End
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
 | 
						|
class QgsMapHitTestTask : QgsTask
 | 
						|
{
 | 
						|
%Docstring(signature="appended")
 | 
						|
Executes a :py:class:`QgsMapHitTest` in a background thread.
 | 
						|
 | 
						|
.. versionadded:: 3.32
 | 
						|
%End
 | 
						|
 | 
						|
%TypeHeaderCode
 | 
						|
#include "qgsmaphittest.h"
 | 
						|
%End
 | 
						|
  public:
 | 
						|
 | 
						|
    QgsMapHitTestTask( const QgsLayerTreeFilterSettings &settings );
 | 
						|
%Docstring
 | 
						|
Constructor for QgsMapHitTestTask, using the specified filter
 | 
						|
``settings``.
 | 
						|
%End
 | 
						|
 | 
						|
 | 
						|
 | 
						|
    QMap<QString, QList<QString>> resultsPy() const /PyName=results/;
 | 
						|
%Docstring
 | 
						|
Returns the hit test results, which are a map of layer ID to visible
 | 
						|
symbol legend keys.
 | 
						|
%End
 | 
						|
 | 
						|
    virtual void cancel();
 | 
						|
 | 
						|
 | 
						|
  protected:
 | 
						|
 | 
						|
    virtual bool run();
 | 
						|
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
/************************************************************************
 | 
						|
 * This file has been generated automatically from                      *
 | 
						|
 *                                                                      *
 | 
						|
 * src/core/qgsmaphittest.h                                             *
 | 
						|
 *                                                                      *
 | 
						|
 * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 | 
						|
 ************************************************************************/
 |