Skip to content

Commit 6f018ba

Browse files
author
mhugent
committedJan 29, 2010
Display alpha value as transparency (to be consistent with the interface in old symbology)
git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@12847 c8812cc2-4d05-0410-92ff-de0c093fc19c

File tree

3 files changed

+23
-9
lines changed

3 files changed

+23
-9
lines changed
 

‎src/gui/symbology-ng/qgssymbolv2selectordialog.cpp

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,11 @@ QgsSymbolV2SelectorDialog::QgsSymbolV2SelectorDialog( QgsSymbolV2* symbol, QgsSt
4848
mSymbolUnitComboBox->setCurrentIndex( mSymbol->outputUnit() );
4949
mSymbolUnitComboBox->blockSignals( false );
5050

51-
mOpacitySlider->blockSignals( true );
52-
mOpacitySlider->setValue( symbol->alpha() * 255 );
53-
mOpacitySlider->blockSignals( false );
51+
mTransparencySlider->blockSignals( true );
52+
double transparency = 1 - symbol->alpha();
53+
mTransparencySlider->setValue( transparency * 255 );
54+
displayTransparency( symbol->alpha() );
55+
mTransparencySlider->blockSignals( false );
5456
}
5557

5658
// select correct page in stacked widget
@@ -243,12 +245,20 @@ void QgsSymbolV2SelectorDialog::on_mSymbolUnitComboBox_currentIndexChanged( cons
243245
}
244246
}
245247

246-
void QgsSymbolV2SelectorDialog::on_mOpacitySlider_valueChanged( int value )
248+
void QgsSymbolV2SelectorDialog::on_mTransparencySlider_valueChanged( int value )
247249
{
248250
if ( mSymbol )
249251
{
250-
mSymbol->setAlpha( value / 255.0 );
252+
double alpha = 1 - ( value / 255.0 );
253+
mSymbol->setAlpha( alpha );
254+
displayTransparency( alpha );
251255
updateSymbolPreview();
252256
emit symbolModified();
253257
}
254258
}
259+
260+
void QgsSymbolV2SelectorDialog::displayTransparency( double alpha )
261+
{
262+
double transparencyPercent = ( 1 - alpha ) * 100;
263+
mTransparencyLabel->setText( tr( "Transparency: %1%" ).arg( transparencyPercent ) );
264+
}

‎src/gui/symbology-ng/qgssymbolv2selectordialog.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ class GUI_EXPORT QgsSymbolV2SelectorDialog : public QDialog, private Ui::QgsSymb
2525
//! Reimplements dialog keyPress event so we can ignore it
2626
void keyPressEvent( QKeyEvent * event );
2727

28+
private:
29+
/**Displays alpha value as transparency in mTransparencyLabel*/
30+
void displayTransparency( double alpha );
31+
2832
public slots:
2933
void changeSymbolProperties();
3034
void setSymbolFromStyle( const QModelIndex & index );
@@ -34,7 +38,7 @@ class GUI_EXPORT QgsSymbolV2SelectorDialog : public QDialog, private Ui::QgsSymb
3438
void setLineWidth( double width );
3539
void addSymbolToStyle();
3640
void on_mSymbolUnitComboBox_currentIndexChanged( const QString & text );
37-
void on_mOpacitySlider_valueChanged( int value );
41+
void on_mTransparencySlider_valueChanged( int value );
3842

3943
signals:
4044
void symbolModified();

‎src/ui/qgssymbolv2selectordialogbase.ui

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,14 @@
6868
</widget>
6969
</item>
7070
<item row="1" column="0">
71-
<widget class="QLabel" name="mOpacityLabel">
71+
<widget class="QLabel" name="mTransparencyLabel">
7272
<property name="text">
7373
<string>Opacity</string>
7474
</property>
7575
</widget>
7676
</item>
7777
<item row="1" column="1">
78-
<widget class="QSlider" name="mOpacitySlider">
78+
<widget class="QSlider" name="mTransparencySlider">
7979
<property name="sizePolicy">
8080
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
8181
<horstretch>0</horstretch>
@@ -281,7 +281,7 @@
281281
<tabstops>
282282
<tabstop>btnSymbolProperties</tabstop>
283283
<tabstop>mSymbolUnitComboBox</tabstop>
284-
<tabstop>mOpacitySlider</tabstop>
284+
<tabstop>mTransparencySlider</tabstop>
285285
<tabstop>spinSize</tabstop>
286286
<tabstop>spinAngle</tabstop>
287287
<tabstop>spinWidth</tabstop>

0 commit comments

Comments
 (0)
Please sign in to comment.