Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #44304 from qgis/backport-44290-to-release-3_16
[Backport release-3_16] Fix opacity slider crash
  • Loading branch information
rouault committed Jul 21, 2021
2 parents bea6d91 + 2239b02 commit 4311770
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 1 deletion.
4 changes: 4 additions & 0 deletions src/gui/layertree/qgslayertreeembeddedwidgetsimpl.cpp
Expand Up @@ -101,6 +101,8 @@ void QgsLayerTreeOpacityWidget::sliderValueChanged( int value )

void QgsLayerTreeOpacityWidget::updateOpacityFromSlider()
{
if ( !mLayer )
return;
int value = mSlider->value();

switch ( mLayer->type() )
Expand Down Expand Up @@ -128,6 +130,8 @@ void QgsLayerTreeOpacityWidget::updateOpacityFromSlider()

void QgsLayerTreeOpacityWidget::layerTrChanged()
{
if ( !mLayer )
return;
mSlider->blockSignals( true );
mSlider->setValue( qobject_cast<QgsVectorLayer *>( mLayer )->opacity() * 1000.0 );
mSlider->blockSignals( false );
Expand Down
3 changes: 2 additions & 1 deletion src/gui/layertree/qgslayertreeembeddedwidgetsimpl.h
Expand Up @@ -16,6 +16,7 @@
#ifndef QGSLAYERTREEEMBEDDEDWIDGETSIMPL_H
#define QGSLAYERTREEEMBEDDEDWIDGETSIMPL_H

#include <QPointer>
#include <QWidget>
#include "qgslayertreeembeddedwidgetregistry.h"

Expand Down Expand Up @@ -56,7 +57,7 @@ class QgsLayerTreeOpacityWidget : public QWidget
void layerTrChanged();

private:
QgsMapLayer *mLayer = nullptr;
QPointer<QgsMapLayer> mLayer;
QSlider *mSlider = nullptr;
QTimer *mTimer = nullptr;
};
Expand Down

0 comments on commit 4311770

Please sign in to comment.