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


class QgsActionScope
{
%Docstring
An action scope defines a "place" for an action to be shown and may add
additional expression variables.
Each QgsAction can be available in one or several action scopes.

Examples:
---------

<dl>
<dt>Canvas</dt>
<dd>Show for canvas tools. Adds `@clicked_x` and `@clicked_y` in map coordinates.</dd>
<dt>Feature</dt>
<dd>Show in feature specific places like the attribute table or feature
form.</dd>
<dt>Field</dt>
<dd>Show in context menus for individual fields (e.g. attribute table). Adds `@field_index`, `@field_name` and `@field_value`.</dd>
<dt>Layer</dt>
<dd>Show in attribute table and work on the layer or selection.</dd>
</dl>

.. versionadded:: 3.0
%End

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

    explicit QgsActionScope();
%Docstring
Creates a new invalid action scope.

.. versionadded:: 3.0
%End

    explicit QgsActionScope( const QString &id, const QString &title, const QString &description, const QgsExpressionContextScope &expressionContextScope = QgsExpressionContextScope() );
%Docstring
Creates a new action scope.
For details concerning the parameters check the documentation
of the corresponding properties.
%End

    bool operator==( const QgsActionScope &other ) const;

    QgsExpressionContextScope expressionContextScope() const;
%Docstring
An expression scope may offer additional variables for an action scope.
This can be an `field_name` for the attribute which was clicked or
`clicked_x` and `clicked_y` for actions which are available as map canvas clicks.

.. versionadded:: 3.0
%End

    void setExpressionContextScope( const QgsExpressionContextScope &expressionContextScope );
%Docstring
\copydoc expressionContextScope()
%End

    QString id() const;
%Docstring
A unique identifier for this action scope.

.. versionadded:: 3.0
%End

    void setId( const QString &id );
%Docstring
\copydoc id()
%End

    QString title() const;
%Docstring
The title is a human readable and translated string that will be
presented to the user in the properties dialog.

.. versionadded:: 3.0
%End
    void setTitle( const QString &title );
%Docstring
\copydoc title()
%End

    QString description() const;
%Docstring
The description should be a longer description of where actions in this scope
are available. It is not necessary to list the available expression variables
in here, they are extracted automatically from the expressionContextScope().

.. versionadded:: 3.0
%End
    void setDescription( const QString &description );
%Docstring
\copydoc description()
%End

    bool isValid() const;
%Docstring
Returns if this scope is valid.

.. versionadded:: 3.0
%End

};


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