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









class QgsGraduatedSymbolRendererWidget : QgsRendererWidget
{

%TypeHeaderCode
#include "qgsgraduatedsymbolrendererwidget.h"
%End
  public:
    static QgsRendererWidget *create( QgsVectorLayer *layer, QgsStyle *style, QgsFeatureRenderer *renderer ) /Factory/;

    QgsGraduatedSymbolRendererWidget( QgsVectorLayer *layer, QgsStyle *style, QgsFeatureRenderer *renderer );
    ~QgsGraduatedSymbolRendererWidget();

    virtual QgsFeatureRenderer *renderer();

    virtual void setContext( const QgsSymbolWidgetContext &context );

    virtual QgsExpressionContext createExpressionContext() const;


  public slots:
    void graduatedColumnChanged( const QString &field );
    void classifyGraduated();
    void reapplyColorRamp();
    void reapplySizes();
    void rangesDoubleClicked( const QModelIndex &idx );
    void rangesClicked( const QModelIndex &idx );
    void changeCurrentValue( QStandardItem *item );

    void addClass();
%Docstring
Adds a class manually to the classification
%End
    void deleteClasses();
%Docstring
Removes currently selected classes
%End
    void deleteAllClasses();
%Docstring
Removes all classes from the classification
%End
    void toggleBoundariesLink( bool linked );
%Docstring
Toggle the link between classes boundaries
%End

    void labelFormatChanged();

    void showSymbolLevels();

    void rowsMoved();
    void modelDataChanged();

    void refreshRanges( bool reset );
%Docstring
Refreshes the ranges for the renderer.

The ``reset`` argument is deprecated and has no effect.
%End

  protected:
    virtual void setSymbolLevels( const QgsLegendSymbolList &levels, bool enabled );


  protected slots:

    virtual void pasteSymbolToSelection();


  protected:
    void updateUiFromRenderer( bool updateCount = true );
    void connectUpdateHandlers();
    void disconnectUpdateHandlers();
    bool rowsOrdered();

    QList<int> selectedClasses();
%Docstring
Returns a list of indexes for the classes under selection
%End
    QgsRangeList selectedRanges();

    void changeRangeSymbol( int rangeIdx );
    void changeRange( int rangeIdx );

    void changeSelectedSymbols();
    void applyChangeToSymbol();
%Docstring
Applies current symbol to selected ranges, or to all ranges if none is
selected
%End

    virtual QList<QgsSymbol *> selectedSymbols();

    QgsSymbol *findSymbolForRange( double lowerBound, double upperBound, const QgsRangeList &ranges ) const;
    virtual void refreshSymbolView();


    virtual void keyPressEvent( QKeyEvent *event );


};


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