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



class QgsNumericFormatWidget : QgsPanelWidget, QgsExpressionContextGenerator
{
%Docstring(signature="appended")
Base class for widgets which allow control over the properties of
:py:class:`QgsNumericFormat` subclasses

.. versionadded:: 3.12
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsNumericFormatWidget( QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsNumericFormatWidget.
%End

    virtual void setFormat( QgsNumericFormat *format ) = 0;
%Docstring
Sets the ``format`` to show in the widget. Ownership is not transferred.

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

    virtual QgsNumericFormat *format() = 0 /TransferBack/;
%Docstring
Returns the format defined by the current settings in the widget.

Ownership of the returned object is transferred to the caller

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

    void registerExpressionContextGenerator( QgsExpressionContextGenerator *generator );
%Docstring
Register an expression context generator class that will be used to
retrieve an expression context for the widget when required.

.. versionadded:: 3.40
%End

    virtual QgsExpressionContext createExpressionContext() const;


  signals:

    void changed();
%Docstring
Emitted whenever the configuration of the numeric format is changed.
%End

};




class QgsBasicNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsBasicNumericFormat`.

.. versionadded:: 3.12
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsBasicNumericFormatWidget( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsBasicNumericFormatWidget, initially showing the
specified ``format``.
%End
    ~QgsBasicNumericFormatWidget();

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

};



class QgsBearingNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsBearingNumericFormat`.

.. versionadded:: 3.12
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsBearingNumericFormatWidget( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsBearingNumericFormatWidget, initially showing the
specified ``format``.
%End
    ~QgsBearingNumericFormatWidget();

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

};


class QgsBearingNumericFormatDialog : QDialog
{
%Docstring(signature="appended")
A dialog which allow control over the properties of a
:py:class:`QgsBearingNumericFormat`.

.. versionadded:: 3.12
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsBearingNumericFormatDialog( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsBearingNumericFormatDialog, initially showing the
specified ``format``.
%End

    QgsBearingNumericFormat *format() /Factory/;
%Docstring
Returns the format defined by the current settings in the dialog.

Ownership of the returned object is transferred to the caller
%End

};




class QgsGeographicCoordinateNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsGeographicCoordinateNumericFormat`.

.. versionadded:: 3.26
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsGeographicCoordinateNumericFormatWidget( const QgsNumericFormat *format, bool hidePrecisionControl = false, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsGeographicCoordinateNumericFormatWidget, initially
showing the specified ``format``.
%End
    ~QgsGeographicCoordinateNumericFormatWidget();

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

};


class QgsGeographicCoordinateNumericFormatDialog : QDialog
{
%Docstring(signature="appended")
A dialog which allow control over the properties of a
:py:class:`QgsGeographicCoordinateNumericFormat`.

.. versionadded:: 3.26
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsGeographicCoordinateNumericFormatDialog( const QgsNumericFormat *format, bool hidePrecisionControl = false, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsGeographicCoordinateNumericFormatDialog, initially
showing the specified ``format``.
%End

    QgsGeographicCoordinateNumericFormat *format() /Factory/;
%Docstring
Returns the format defined by the current settings in the dialog.

Ownership of the returned object is transferred to the caller
%End

};




class QgsCurrencyNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsCurrencyNumericFormat`.

.. versionadded:: 3.12
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsCurrencyNumericFormatWidget( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsCurrencyNumericFormatWidget, initially showing the
specified ``format``.
%End
    ~QgsCurrencyNumericFormatWidget();

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

};




class QgsPercentageNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsPercentageNumericFormat`.

.. versionadded:: 3.12
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsPercentageNumericFormatWidget( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsPercentageNumericFormatWidget, initially showing the
specified ``format``.
%End
    ~QgsPercentageNumericFormatWidget();

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

};




class QgsScientificNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsScientificNumericFormat`.

.. versionadded:: 3.12
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsScientificNumericFormatWidget( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsScientificNumericFormatWidget, initially showing the
specified ``format``.
%End
    ~QgsScientificNumericFormatWidget();

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

};



class QgsFractionNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsFractionNumericFormat`.

.. versionadded:: 3.14
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsFractionNumericFormatWidget( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsFractionNumericFormatWidget, initially showing the
specified ``format``.
%End
    ~QgsFractionNumericFormatWidget();

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

};



class QgsExpressionBasedNumericFormatWidget : QgsNumericFormatWidget
{
%Docstring(signature="appended")
A widget which allow control over the properties of a
:py:class:`QgsExpressionBasedNumericFormat`.

.. versionadded:: 3.40
%End

%TypeHeaderCode
#include "qgsnumericformatwidget.h"
%End
  public:
    QgsExpressionBasedNumericFormatWidget( const QgsNumericFormat *format, QWidget *parent /TransferThis/ = 0 );
%Docstring
Constructor for QgsExpressionBasedNumericFormatWidget, initially showing
the specified ``format``.
%End
    ~QgsExpressionBasedNumericFormatWidget();

    QgsExpressionContext createExpressionContext() const final;

    void setFormat( QgsNumericFormat *format ) final;

    QgsNumericFormat *format() final /Factory/;

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