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




class QgsDockWidget : QDockWidget
{
%Docstring
QgsDockWidget subclass with more fine-grained control over how the widget is closed or opened.

.. versionadded:: 2.16
%End

%TypeHeaderCode
#include "qgsdockwidget.h"
%End
  public:

    explicit QgsDockWidget( QWidget *parent /TransferThis/ = 0, Qt::WindowFlags flags = 0 );
%Docstring
Constructor for QgsDockWidget.

:param parent: parent widget
:param flags: window flags
%End

    explicit QgsDockWidget( const QString &title, QWidget *parent /TransferThis/ = 0, Qt::WindowFlags flags = 0 );
%Docstring
Constructor for QgsDockWidget.

:param title: dock title
:param parent: parent widget
:param flags: window flags
%End

    bool isUserVisible() const;
%Docstring
Returns ``True`` if the dock is both opened and raised to the front (ie not hidden by
any other tabs.

.. seealso:: :py:func:`setUserVisible`

.. seealso:: :py:func:`toggleUserVisible`
%End

    void setToggleVisibilityAction( QAction *action );
%Docstring
Links an ``action`` to the dock, so that toggling the action will automatically set the dock's visibility
to suit (and changing the dock visibility will update the action's state).

.. seealso:: :py:func:`toggleVisibilityAction`

.. versionadded:: 3.4
%End

    QAction *toggleVisibilityAction();
%Docstring
Returns the action linked to the dock.

.. seealso:: :py:func:`setToggleVisibilityAction`

.. versionadded:: 3.4
%End

  public slots:

    void setUserVisible( bool visible );
%Docstring
Sets the dock widget as visible to a user, ie both shown and raised to the front.

:param visible: set to ``True`` to show the dock to the user, or ``False`` to hide the dock.
                When setting a dock as user visible, the dock will be opened (if it is not already
                opened) and raised to the front.
                When setting as hidden, the following logic is used:
                - hiding a dock which is open but not raised (ie hidden by another tab) will have no
                effect, and the dock will still be opened and hidden by the other tab
                - hiding a dock which is open and raised (ie, user visible) will cause the dock to
                be closed
                - hiding a dock which is closed has no effect and raises no signals

.. seealso:: :py:func:`isUserVisible`

.. seealso:: :py:func:`toggleUserVisible`
%End

    void toggleUserVisible();
%Docstring
Toggles whether the dock is user visible. If the dock is not currently user
visible (i.e. opened and activated as a tab) then the dock will be opened
and raised. If it is currently user visible it will be closed.

.. seealso:: :py:func:`setUserVisible`

.. seealso:: :py:func:`isUserVisible`

.. versionadded:: 3.2
%End

  protected:

    virtual void closeEvent( QCloseEvent * );

    virtual void showEvent( QShowEvent *event );


  signals:

    void closed();
%Docstring
Emitted when dock widget is closed.

.. seealso:: :py:func:`closedStateChanged`

.. seealso:: :py:func:`opened`
%End

    void closedStateChanged( bool wasClosed );
%Docstring
Emitted when dock widget is closed (or opened).

:param wasClosed: will be ``True`` if dock widget was closed, or ``False`` if dock widget was opened

.. seealso:: :py:func:`closed`

.. seealso:: :py:func:`openedStateChanged`
%End

    void opened();
%Docstring
Emitted when dock widget is opened.

.. seealso:: :py:func:`openedStateChanged`

.. seealso:: :py:func:`closed`
%End

    void openedStateChanged( bool wasOpened );
%Docstring
Emitted when dock widget is opened (or closed).

:param wasOpened: will be ``True`` if dock widget was opened, or ``False`` if dock widget was closed

.. seealso:: :py:func:`closedStateChanged`

.. seealso:: :py:func:`opened`
%End

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