118    QMenu *advancedMenu();
 
  147    void loadSymbol( 
QgsSymbol *symbol, SymbolLayerItem *parent = 
nullptr ) 
SIP_SKIP;
 
  154    void moveLayerDown();
 
  179    void duplicateLayer();
 
  190    void updateLayerPreview();
 
  195    void updatePreview();
 
  198    void symbolChanged();
 
  212    void symbolModified();
 
  220    void projectDataChanged();
 
  225    void layersAboutToBeRemoved( const QList<
QgsMapLayer *> &layers );
 
  241    void updateLockButton();
 
  243    void updateLockButtonIcon();
 
  245    SymbolLayerItem *currentLayerItem();
 
  257    void moveLayerByOffset( 
int offset );
 
  263    void setWidget( QWidget *widget );
 
  268    QMenu *mAdvancedMenu = 
nullptr;
 
  269    QAction *mLockColorAction = 
nullptr;
 
  270    QAction *mLockSelectionColorAction = 
nullptr;
 
  273    QStandardItemModel *mSymbolLayersModel = 
nullptr;
 
  274    QWidget *mPresentWidget = 
nullptr;
 
  276    std::unique_ptr<DataDefinedRestorer> mDataDefineRestorer;
 
  280    bool mBlockModified = false;
 
 
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...