15 #ifndef QGSSYMBOLBUTTON_H 
   16 #define QGSSYMBOLBUTTON_H 
   22 #include <QToolButton> 
   48     Q_PROPERTY( QString dialogTitle READ dialogTitle WRITE setDialogTitle )
 
   59     QSize minimumSizeHint() 
const override;
 
   60     QSize sizeHint() 
const override;
 
   80     void setDialogTitle( 
const QString &title );
 
   86     QString dialogTitle() 
const;
 
  104       SymbolType *symbolCastToType = 
dynamic_cast<SymbolType *
>( tmpSymbol );
 
  106       if ( symbolCastToType )
 
  108         return symbolCastToType->
clone();
 
  179     void setColor( 
const QColor &color );
 
  218     void changeEvent( QEvent *e ) 
override;
 
  219     void showEvent( QShowEvent *e ) 
override;
 
  220     void resizeEvent( QResizeEvent *event ) 
override;
 
  223     void mousePressEvent( QMouseEvent *e ) 
override;
 
  225     void mouseMoveEvent( QMouseEvent *e ) 
override;
 
  226     void mouseReleaseEvent( QMouseEvent *e ) 
override;
 
  227     void keyPressEvent( QKeyEvent *e ) 
override;
 
  229     void dragEnterEvent( QDragEnterEvent *e ) 
override;
 
  232     void dragLeaveEvent( QDragLeaveEvent *e ) 
override;
 
  235     void dropEvent( QDropEvent *e ) 
override;
 
  239     void showSettingsDialog();
 
  240     void updateSymbolFromWidget();
 
  248     void addRecentColor( 
const QColor &color );
 
  253     void activatePicker();
 
  259     QString mDialogTitle;
 
  266     QPoint mDragStartPosition;
 
  268     QMenu *mMenu = 
nullptr;
 
  270     QPointer< QgsVectorLayer > mLayer;
 
  274     std::unique_ptr< QgsSymbol > mSymbol;
 
  278     bool mPickingColor = 
false;
 
  284     void updatePreview( 
const QColor &color = QColor(), 
QgsSymbol *tempSymbol = 
nullptr );
 
  295     bool colorFromMimeData( 
const QMimeData *mimeData, QColor &resultColor, 
bool &hasAlpha );
 
  300     QPixmap createColorIcon( 
const QColor &color ) 
const;
 
  308     void stopPicking( QPoint eventPos, 
bool samplingColor = 
true );
 
  310     void showColorDialog();
 
Abstract interface for generating an expression context.
Map canvas is a class for displaying all GIS data types on a canvas.
A bar for displaying non-blocking messages to the user.
Abstract base class for all rendered symbols.
virtual QgsSymbol * clone() const =0
Returns a deep copy of this symbol.
Represents a vector layer which manages a vector based data sets.