/************************************************************************ * 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") Class that 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 LayerFilterExpression; QgsMapHitTest( const QgsMapSettings &settings, const QgsGeometry &polygon = QgsGeometry(), const QgsMapHitTest::LayerFilterExpression &layerFilterExpression = QgsMapHitTest::LayerFilterExpression() ); %Docstring :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> 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> 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 * ************************************************************************/