Skip to content

Commit d24c64f

Browse files
committedMay 30, 2017
Use QgsOpacityWidget wherever appropriate
1 parent eed758e commit d24c64f

32 files changed

+871
-1850
lines changed
 

‎src/app/composer/qgscomposeritemwidget.cpp

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -165,14 +165,11 @@ QgsComposerItemWidget::QgsComposerItemWidget( QWidget *parent, QgsComposerItem *
165165

166166
initializeDataDefinedButtons();
167167

168-
mOpacitySpnBx->setClearValue( 100.0 );
169-
170168
setValuesForGuiElements();
171169
connect( mItem->composition(), &QgsComposition::paperSizeChanged, this, &QgsComposerItemWidget::setValuesForGuiPositionElements );
172170
connect( mItem, &QgsComposerItem::sizeChanged, this, &QgsComposerItemWidget::setValuesForGuiPositionElements );
173171
connect( mItem, &QgsComposerObject::itemChanged, this, &QgsComposerItemWidget::setValuesForGuiNonPositionElements );
174-
175-
connect( mOpacitySlider, &QAbstractSlider::valueChanged, this, [ = ]( int value ) { mOpacitySpnBx->setValue( value / 10.0 ); } );
172+
connect( mOpacityWidget, &QgsOpacityWidget::opacityChanged, this, &QgsComposerItemWidget::opacityChanged );
176173

177174
updateVariables();
178175
connect( mVariableEditor, &QgsVariableEditorWidget::scopeChanged, this, &QgsComposerItemWidget::variablesChanged );
@@ -506,8 +503,7 @@ void QgsComposerItemWidget::setValuesForGuiNonPositionElements()
506503
mBackgroundGroupBox->blockSignals( true );
507504
mItemIdLineEdit->blockSignals( true );
508505
mBlendModeCombo->blockSignals( true );
509-
mOpacitySlider->blockSignals( true );
510-
mOpacitySpnBx->blockSignals( true );
506+
mOpacityWidget->blockSignals( true );
511507
mFrameColorButton->blockSignals( true );
512508
mFrameJoinStyleCombo->blockSignals( true );
513509
mBackgroundColorButton->blockSignals( true );
@@ -522,8 +518,7 @@ void QgsComposerItemWidget::setValuesForGuiNonPositionElements()
522518
mFrameGroupBox->setChecked( mItem->hasFrame() );
523519
mBackgroundGroupBox->setChecked( mItem->hasBackground() );
524520
mBlendModeCombo->setBlendMode( mItem->blendMode() );
525-
mOpacitySlider->setValue( mItem->itemOpacity() * 1000.0 );
526-
mOpacitySpnBx->setValue( mItem->itemOpacity() * 100.0 );
521+
mOpacityWidget->setOpacity( mItem->itemOpacity() );
527522
mItemRotationSpinBox->setValue( mItem->itemRotation( QgsComposerObject::OriginalValue ) );
528523
mExcludeFromPrintsCheckBox->setChecked( mItem->excludeFromExports( QgsComposerObject::OriginalValue ) );
529524

@@ -535,8 +530,7 @@ void QgsComposerItemWidget::setValuesForGuiNonPositionElements()
535530
mBackgroundGroupBox->blockSignals( false );
536531
mItemIdLineEdit->blockSignals( false );
537532
mBlendModeCombo->blockSignals( false );
538-
mOpacitySlider->blockSignals( false );
539-
mOpacitySpnBx->blockSignals( false );
533+
mOpacityWidget->blockSignals( false );
540534
mItemRotationSpinBox->blockSignals( false );
541535
mExcludeFromPrintsCheckBox->blockSignals( false );
542536
}
@@ -593,15 +587,12 @@ void QgsComposerItemWidget::on_mBlendModeCombo_currentIndexChanged( int index )
593587
}
594588
}
595589

596-
void QgsComposerItemWidget::on_mOpacitySpnBx_valueChanged( double value )
590+
void QgsComposerItemWidget::opacityChanged( double value )
597591
{
598-
mOpacitySlider->blockSignals( true );
599-
mOpacitySlider->setValue( value * 10 );
600-
mOpacitySlider->blockSignals( false );
601592
if ( mItem )
602593
{
603594
mItem->beginCommand( tr( "Item opacity changed" ), QgsComposerMergeCommand::ItemOpacity );
604-
mItem->setItemOpacity( value / 100.0 );
595+
mItem->setItemOpacity( value );
605596
mItem->endCommand();
606597
}
607598
}

‎src/app/composer/qgscomposeritemwidget.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ class QgsComposerItemWidget: public QWidget, private Ui::QgsComposerItemWidgetBa
172172
void on_mLowerRightCheckBox_stateChanged( int state );
173173

174174
void on_mBlendModeCombo_currentIndexChanged( int index );
175-
void on_mOpacitySpnBx_valueChanged( double value );
175+
void opacityChanged( double value );
176176

177177
void on_mItemRotationSpinBox_valueChanged( double val );
178178
void on_mExcludeFromPrintsCheckBox_toggled( bool checked );

‎src/app/qgsdiagramproperties.cpp

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ QgsDiagramProperties::QgsDiagramProperties( QgsVectorLayer *layer, QWidget *pare
9494
mDiagramPenColorButton->setContext( QStringLiteral( "symbology" ) );
9595
mDiagramPenColorButton->setShowNoColor( true );
9696
mDiagramPenColorButton->setNoColorString( tr( "Transparent stroke" ) );
97-
mOpacitySpinBox->setClearValue( 100.0 );
9897

9998
mMaxValueSpinBox->setShowClearButton( false );
10099

@@ -262,8 +261,7 @@ QgsDiagramProperties::QgsDiagramProperties( QgsVectorLayer *layer, QWidget *pare
262261
mDiagramFont = settingList.at( 0 ).font;
263262
QSizeF size = settingList.at( 0 ).size;
264263
mBackgroundColorButton->setColor( settingList.at( 0 ).backgroundColor );
265-
mOpacitySpinBox->setValue( settingList.at( 0 ).opacity * 100.0 );
266-
mOpacitySlider->setValue( mOpacitySpinBox->value() * 10 );
264+
mOpacityWidget->setOpacity( settingList.at( 0 ).opacity );
267265
mDiagramPenColorButton->setColor( settingList.at( 0 ).penColor );
268266
mPenWidthSpinBox->setValue( settingList.at( 0 ).penWidth );
269267
mDiagramSizeSpinBox->setValue( ( size.width() + size.height() ) / 2.0 );
@@ -405,9 +403,6 @@ QgsDiagramProperties::QgsDiagramProperties( QgsVectorLayer *layer, QWidget *pare
405403
}
406404

407405
connect( mAddAttributeExpression, &QPushButton::clicked, this, &QgsDiagramProperties::showAddAttributeExpressionDialog );
408-
connect( mOpacitySlider, &QSlider::valueChanged, this, [ = ]( int value ) { mOpacitySpinBox->setValue( value / 10.0 ); } );
409-
connect( mOpacitySpinBox, static_cast < void ( QgsDoubleSpinBox::* )( double ) > ( &QgsDoubleSpinBox::valueChanged ), this, [ = ]( double value ) { mOpacitySlider->setValue( value * 10 ); } );
410-
411406
registerDataDefinedButton( mBackgroundColorDDBtn, QgsDiagramLayerSettings::BackgroundColor );
412407
registerDataDefinedButton( mLineColorDDBtn, QgsDiagramLayerSettings::StrokeColor );
413408
registerDataDefinedButton( mLineWidthDDBtn, QgsDiagramLayerSettings::StrokeWidth );
@@ -739,7 +734,7 @@ void QgsDiagramProperties::apply()
739734
QgsDiagramSettings ds;
740735
ds.enabled = ( mDiagramTypeComboBox->currentIndex() != 0 );
741736
ds.font = mDiagramFont;
742-
ds.opacity = mOpacitySpinBox->value() / 100.0;
737+
ds.opacity = mOpacityWidget->opacity();
743738

744739
QList<QColor> categoryColors;
745740
QList<QString> categoryAttributes;

‎src/app/qgsprojectproperties.cpp

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1133,7 +1133,7 @@ void QgsProjectProperties::apply()
11331133
QgsProject::instance()->writeEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/Line" ), cboStyleLine->currentText() );
11341134
QgsProject::instance()->writeEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/Fill" ), cboStyleFill->currentText() );
11351135
QgsProject::instance()->writeEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/ColorRamp" ), cboStyleColorRamp->currentText() );
1136-
QgsProject::instance()->writeEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/Opacity" ), 1.0 - mTransparencySlider->value() / 100.0 );
1136+
QgsProject::instance()->writeEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/Opacity" ), mDefaultOpacityWidget->opacity() );
11371137
QgsProject::instance()->writeEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/RandomColors" ), cbxStyleRandomColors->isChecked() );
11381138
if ( mTreeProjectColors->isDirty() )
11391139
{
@@ -1687,16 +1687,16 @@ void QgsProjectProperties::populateStyles()
16871687
cbxStyleRandomColors->setChecked( QgsProject::instance()->readBoolEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/RandomColors" ), true ) );
16881688

16891689
// alpha transparency
1690-
int transparencyInt = 255;
1690+
double opacity = 1.0;
16911691
bool ok = false;
16921692
double alpha = QgsProject::instance()->readDoubleEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/AlphaInt" ), 255, &ok );
16931693
if ( ok )
1694-
transparencyInt = alpha;
1694+
opacity = 1.0 - alpha / 255.0;
16951695
double newOpacity = QgsProject::instance()->readDoubleEntry( QStringLiteral( "DefaultStyles" ), QStringLiteral( "/Opacity" ), 1.0, &ok );
16961696
if ( ok )
1697-
transparencyInt = 255 - newOpacity * 255.0;
1697+
opacity = newOpacity;
16981698

1699-
mTransparencySlider->setValue( transparencyInt );
1699+
mDefaultOpacityWidget->setOpacity( opacity );
17001700
}
17011701

17021702
void QgsProjectProperties::on_pbtnStyleManager_clicked()
@@ -1728,20 +1728,6 @@ void QgsProjectProperties::on_pbtnStyleColorRamp_clicked()
17281728
on_pbtnStyleManager_clicked();
17291729
}
17301730

1731-
void QgsProjectProperties::on_mTransparencySlider_valueChanged( int value )
1732-
{
1733-
mTransparencySpinBox->blockSignals( true );
1734-
mTransparencySpinBox->setValue( value );
1735-
mTransparencySpinBox->blockSignals( false );
1736-
}
1737-
1738-
void QgsProjectProperties::on_mTransparencySpinBox_valueChanged( int value )
1739-
{
1740-
mTransparencySlider->blockSignals( true );
1741-
mTransparencySlider->setValue( value );
1742-
mTransparencySlider->blockSignals( false );
1743-
}
1744-
17451731
void QgsProjectProperties::editSymbol( QComboBox *cbo )
17461732
{
17471733
QString symbolName = cbo->currentText();

‎src/app/qgsprojectproperties.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,8 +124,6 @@ class APP_EXPORT QgsProjectProperties : public QgsOptionsDialogBase, private Ui:
124124
void on_pbtnStyleLine_clicked();
125125
void on_pbtnStyleFill_clicked();
126126
void on_pbtnStyleColorRamp_clicked();
127-
void on_mTransparencySlider_valueChanged( int value );
128-
void on_mTransparencySpinBox_valueChanged( int value );
129127

130128
/**
131129
* Slot to show the context help for this dialog

‎src/app/qgsrasterlayerproperties.cpp

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,6 @@ QgsRasterLayerProperties::QgsRasterLayerProperties( QgsMapLayer *lyr, QgsMapCanv
112112

113113
connect( mOptionsStackedWidget, &QStackedWidget::currentChanged, this, &QgsRasterLayerProperties::mOptionsStackedWidget_CurrentChanged );
114114

115-
connect( sliderTransparency, &QAbstractSlider::valueChanged, this, &QgsRasterLayerProperties::sliderTransparency_valueChanged );
116-
117115
// brightness/contrast controls
118116
connect( mSliderBrightness, &QAbstractSlider::valueChanged, mBrightnessSpinBox, &QSpinBox::setValue );
119117
connect( mBrightnessSpinBox, static_cast < void ( QSpinBox::* )( int ) > ( &QSpinBox::valueChanged ), mSliderBrightness, &QAbstractSlider::setValue );
@@ -651,10 +649,7 @@ void QgsRasterLayerProperties::sync()
651649
QgsRasterRenderer *renderer = mRasterLayer->renderer();
652650
if ( renderer )
653651
{
654-
sliderTransparency->setValue( ( 1.0 - renderer->opacity() ) * 255 );
655-
//update the transparency percentage label
656-
sliderTransparency_valueChanged( ( 1.0 - renderer->opacity() ) * 255 );
657-
652+
mOpacityWidget->setOpacity( renderer->opacity() );
658653
cboxTransparencyBand->setBand( renderer->alphaBand() );
659654
}
660655

@@ -904,7 +899,7 @@ void QgsRasterLayerProperties::apply()
904899
rasterRenderer->setRasterTransparency( rasterTransparency );
905900

906901
//set global transparency
907-
rasterRenderer->setOpacity( ( 255 - sliderTransparency->value() ) / 255.0 );
902+
rasterRenderer->setOpacity( mOpacityWidget->opacity() );
908903
}
909904

910905
QgsDebugMsg( "processing general tab" );
@@ -1613,13 +1608,6 @@ void QgsRasterLayerProperties::pixelSelected( const QgsPoint &canvasPoint )
16131608
tableTransparency->resizeRowsToContents();
16141609
}
16151610

1616-
void QgsRasterLayerProperties::sliderTransparency_valueChanged( int value )
1617-
{
1618-
//set the transparency percentage label to a suitable value
1619-
int myInt = static_cast < int >( ( value / 255.0 ) * 100 ); //255.0 to prevent integer division
1620-
lblTransparencyPercent->setText( QString::number( myInt ) + '%' );
1621-
}//sliderTransparency_valueChanged
1622-
16231611
void QgsRasterLayerProperties::toggleSaturationControls( int grayscaleMode )
16241612
{
16251613
// Enable or disable saturation controls based on choice of grayscale mode

‎src/app/qgsrasterlayerproperties.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,6 @@ class APP_EXPORT QgsRasterLayerProperties : public QgsOptionsDialogBase, private
8484
//void on_btnResetNull_clicked();
8585

8686
void pixelSelected( const QgsPoint & );
87-
//! \brief slot executed when the transparency level changes.
88-
void sliderTransparency_valueChanged( int );
8987

9088
private slots:
9189
void on_mRenderTypeComboBox_currentIndexChanged( int index );

0 commit comments

Comments
 (0)