/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/gui/qgsbrowsertreeview.h                                         *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 ************************************************************************/



// this is needed for the "convert to subclass" code below to compile
%ModuleHeaderCode
#include "qgsbrowsertreeview.h"
%End


class QgsBrowserTreeView : QTreeView
{
%Docstring(signature="appended")
The :py:class:`QgsBrowserTreeView` class extends QTreeView with
save/restore tree state functionality.

.. seealso:: :py:class:`QgsBrowserModel`
%End

%TypeHeaderCode
#include "qgsbrowsertreeview.h"
%End
%ConvertToSubClassCode
    if ( qobject_cast<QgsBrowserTreeView *>( sipCpp ) != nullptr )
      sipType = sipType_QgsBrowserTreeView;
    else
      sipType = nullptr;
%End
  public:
    QgsBrowserTreeView( QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsBrowserTreeView
%End

    virtual void setModel( QAbstractItemModel *model );

    void setBrowserModel( QgsBrowserGuiModel *model );
%Docstring
Sets the browser model
%End
    QgsBrowserGuiModel *browserModel();
%Docstring
Returns the browser model
%End
    virtual void showEvent( QShowEvent *e );

    virtual void hideEvent( QHideEvent *e );


    bool hasExpandedDescendant( const QModelIndex &index ) const;

    void setSettingsSection( const QString &section );

    bool setSelectedItem( QgsDataItem *item );
%Docstring
Sets the ``item`` currently selected in the view.

Returns ``True`` if the item was found and could be selected.

.. versionadded:: 3.28
%End

    void expandPath( const QString &path, bool selectPath = false );
%Docstring
Expands out a file ``path`` in the view.

The ``path`` must correspond to a valid directory existing on the file
system.

Since QGIS 3.38 the ``selectPath`` argument can be used to automatically
select the path too.

.. versionadded:: 3.28
%End

  protected:
    virtual void keyPressEvent( QKeyEvent *event );


  protected slots:
    virtual void rowsInserted( const QModelIndex &parentIndex, int start, int end );


};

/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/gui/qgsbrowsertreeview.h                                         *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 ************************************************************************/
