mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-11-04 00:04:25 -05:00 
			
		
		
		
	This has MANY benefits: - Shows the merged feature service/map service view we use in browser - Avoids the HUGE main thread ui hang when connecting to servers with many layers (could be 20 mins+ for some services) - Avoids bombing out and showing incomplete lists when a server reports an error when connecting to any of the services it advertises (happens often)
		
			
				
	
	
		
			208 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			208 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
/************************************************************************
 | 
						|
 * This file has been generated automatically from                      *
 | 
						|
 *                                                                      *
 | 
						|
 * src/core/qgsbrowserproxymodel.h                                      *
 | 
						|
 *                                                                      *
 | 
						|
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 | 
						|
 ************************************************************************/
 | 
						|
 | 
						|
 | 
						|
 | 
						|
class QgsBrowserProxyModel : QSortFilterProxyModel
 | 
						|
{
 | 
						|
%Docstring
 | 
						|
A QSortFilterProxyModel subclass for filtering and sorting browser model items.
 | 
						|
 | 
						|
.. versionadded:: 3.4
 | 
						|
%End
 | 
						|
 | 
						|
%TypeHeaderCode
 | 
						|
#include "qgsbrowserproxymodel.h"
 | 
						|
%End
 | 
						|
  public:
 | 
						|
 | 
						|
    enum FilterSyntax
 | 
						|
    {
 | 
						|
      Normal,
 | 
						|
      Wildcards,
 | 
						|
      RegularExpression,
 | 
						|
    };
 | 
						|
 | 
						|
    explicit QgsBrowserProxyModel( QObject *parent /TransferThis/ = 0 );
 | 
						|
%Docstring
 | 
						|
Constructor for QgsBrowserProxyModel, with the specified ``parent`` object.
 | 
						|
%End
 | 
						|
 | 
						|
    void setBrowserModel( QgsBrowserModel *model );
 | 
						|
%Docstring
 | 
						|
Sets the underlying browser ``model``.
 | 
						|
 | 
						|
.. seealso:: :py:func:`browserModel`
 | 
						|
%End
 | 
						|
 | 
						|
    QgsBrowserModel *browserModel();
 | 
						|
%Docstring
 | 
						|
Returns the underlying browser model.
 | 
						|
 | 
						|
.. seealso:: :py:func:`setBrowserModel`
 | 
						|
%End
 | 
						|
 | 
						|
    QgsDataItem *dataItem( const QModelIndex &index ) const;
 | 
						|
%Docstring
 | 
						|
Returns the data item at the specified proxy ``index``, or ``None`` if no item
 | 
						|
exists at the index.
 | 
						|
%End
 | 
						|
 | 
						|
    void setFilterSyntax( FilterSyntax syntax );
 | 
						|
%Docstring
 | 
						|
Sets the filter ``syntax``.
 | 
						|
 | 
						|
.. seealso:: :py:func:`filterSyntax`
 | 
						|
%End
 | 
						|
 | 
						|
    FilterSyntax filterSyntax() const;
 | 
						|
%Docstring
 | 
						|
Returns the filter syntax.
 | 
						|
 | 
						|
.. seealso:: :py:func:`setFilterSyntax`
 | 
						|
%End
 | 
						|
 | 
						|
    void setFilterString( const QString &filter );
 | 
						|
%Docstring
 | 
						|
Sets the ``filter`` string to use when filtering items in the model.
 | 
						|
 | 
						|
.. seealso:: :py:func:`filterString`
 | 
						|
%End
 | 
						|
 | 
						|
    QString filterString() const;
 | 
						|
%Docstring
 | 
						|
Returns the filter string used when filtering items in the model.
 | 
						|
 | 
						|
.. seealso:: :py:func:`setFilterString`
 | 
						|
%End
 | 
						|
 | 
						|
    void setFilterCaseSensitivity( Qt::CaseSensitivity sensitivity );
 | 
						|
%Docstring
 | 
						|
Sets whether item filtering should be case sensitive.
 | 
						|
 | 
						|
.. seealso:: :py:func:`caseSensitivity`
 | 
						|
%End
 | 
						|
 | 
						|
    Qt::CaseSensitivity caseSensitivity() const;
 | 
						|
%Docstring
 | 
						|
Returns whether item filtering is case sensitive.
 | 
						|
 | 
						|
.. seealso:: :py:func:`setFilterCaseSensitivity`
 | 
						|
%End
 | 
						|
 | 
						|
    bool filterByLayerType() const;
 | 
						|
%Docstring
 | 
						|
Returns ``True`` if the model is filtered by map layer type.
 | 
						|
 | 
						|
.. seealso:: :py:func:`layerType`
 | 
						|
 | 
						|
.. seealso:: :py:func:`setFilterByLayerType`
 | 
						|
%End
 | 
						|
 | 
						|
    void setFilterByLayerType( bool enabled );
 | 
						|
%Docstring
 | 
						|
Sets whether the model is filtered by map layer type.
 | 
						|
 | 
						|
.. seealso:: :py:func:`filterByLayerType`
 | 
						|
 | 
						|
.. seealso:: :py:func:`setLayerType`
 | 
						|
%End
 | 
						|
 | 
						|
    QgsMapLayerType layerType() const;
 | 
						|
%Docstring
 | 
						|
Returns the layer type to filter the model by. This is only used if
 | 
						|
:py:func:`~QgsBrowserProxyModel.filterByLayerType` is ``True``.
 | 
						|
 | 
						|
.. seealso:: :py:func:`setLayerType`
 | 
						|
 | 
						|
.. seealso:: :py:func:`filterByLayerType`
 | 
						|
%End
 | 
						|
 | 
						|
    void setLayerType( QgsMapLayerType type );
 | 
						|
%Docstring
 | 
						|
Sets the layer ``type`` to filter the model by. This is only used if
 | 
						|
:py:func:`~QgsBrowserProxyModel.filterByLayerType` is ``True``.
 | 
						|
 | 
						|
.. seealso:: :py:func:`layerType`
 | 
						|
 | 
						|
.. seealso:: :py:func:`setFilterByLayerType`
 | 
						|
%End
 | 
						|
 | 
						|
    void setHiddenDataItemProviderKeyFilter( const QStringList &hiddenItemsFilter );
 | 
						|
%Docstring
 | 
						|
Sets a filter to hide data items based on :py:func:`QgsDataItem.providerKey()` associated with the item.
 | 
						|
 | 
						|
By default browser model shows all items from all available data item providers and few special
 | 
						|
items (e.g. Favorites).
 | 
						|
To customize the behavior, set the filter to not load certain data items.
 | 
						|
The items that are not based on data item providers have prefix "special:", for example
 | 
						|
"special:Favorites", "special:Home", "PostGIS", "MSSQL"
 | 
						|
 | 
						|
All items created by the providers listed in filter are hidden from the layer tree.
 | 
						|
This filter is always evaluated.
 | 
						|
 | 
						|
:param hiddenItemsFilter: a list of data provider prefixes that will be hidden.
 | 
						|
 | 
						|
.. versionadded:: 3.12
 | 
						|
%End
 | 
						|
 | 
						|
    void setShownDataItemProviderKeyFilter( const QStringList &shownItemsFilter );
 | 
						|
%Docstring
 | 
						|
Sets a filter to show data items based on :py:func:`QgsDataItem.providerKey()` associated with the item.
 | 
						|
 | 
						|
By default browser model shows all items from all available data item providers and few special
 | 
						|
items (e.g. Favorites).
 | 
						|
To customize the behavior, set the filter to load only certain data items.
 | 
						|
The items that are not based on data item providers have prefix "special:", for example
 | 
						|
"special:Favorites", "special:Home", "PostGIS", "MSSQL"
 | 
						|
 | 
						|
Only the items created by the providers listed in filter are shown in the layer tree.
 | 
						|
This filter is always evaluated.
 | 
						|
 | 
						|
:param shownItemsFilter: a list of data provider prefixes that will be hidden.
 | 
						|
 | 
						|
.. versionadded:: 3.14
 | 
						|
%End
 | 
						|
 | 
						|
    bool showLayers() const;
 | 
						|
%Docstring
 | 
						|
Returns ``True`` if layers must be shown, this flag is ``True`` by default.
 | 
						|
 | 
						|
.. seealso:: :py:func:`setShowLayers`
 | 
						|
 | 
						|
.. versionadded:: 3.14
 | 
						|
%End
 | 
						|
 | 
						|
    void setShowLayers( bool showLayers );
 | 
						|
%Docstring
 | 
						|
Sets show layers to ``showLayers``
 | 
						|
 | 
						|
.. seealso:: :py:func:`showLayers`
 | 
						|
 | 
						|
.. versionadded:: 3.14
 | 
						|
%End
 | 
						|
 | 
						|
  protected:
 | 
						|
 | 
						|
    virtual bool filterAcceptsRow( int sourceRow, const QModelIndex &sourceParent ) const;
 | 
						|
 | 
						|
 | 
						|
 | 
						|
  public:
 | 
						|
    virtual bool hasChildren( const QModelIndex &parent = QModelIndex() ) const;
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
/************************************************************************
 | 
						|
 * This file has been generated automatically from                      *
 | 
						|
 *                                                                      *
 | 
						|
 * src/core/qgsbrowserproxymodel.h                                      *
 | 
						|
 *                                                                      *
 | 
						|
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 | 
						|
 ************************************************************************/
 |