Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
line color starts to work
  • Loading branch information
redlegoreng authored and mhugent committed Jan 22, 2013
1 parent 3d275e3 commit 310875e
Show file tree
Hide file tree
Showing 8 changed files with 41 additions and 12 deletions.
26 changes: 25 additions & 1 deletion src/app/composer/qgscomposerscalebarwidget.cpp
Expand Up @@ -297,6 +297,30 @@ void QgsComposerScaleBarWidget::on_mFontButton_clicked()
mComposerScaleBar->update();
}

void QgsComposerScaleBarWidget::on_mFontColorPushButton_clicked()
{
if ( !mComposerScaleBar )
{
return;
}

QColor oldColor = mComposerScaleBar->fontPen().color();
QColor newColor = QColorDialog::getColor( oldColor, 0 );

if ( !newColor.isValid() ) //user canceled the dialog
{
return;
}

mComposerScaleBar->beginCommand( tr( "Scalebar font color changed" ) );
disconnectUpdateSignal();
QPen newPen( newColor );
mComposerScaleBar->setFontPen( newPen );
mComposerScaleBar->update();
connectUpdateSignal();
mComposerScaleBar->endCommand();
}

void QgsComposerScaleBarWidget::on_mColorPushButton_clicked()
{
if ( !mComposerScaleBar )
Expand Down Expand Up @@ -336,7 +360,7 @@ void QgsComposerScaleBarWidget::on_mStrokeColorPushButton_clicked()
return;
}

mComposerScaleBar->beginCommand( tr( "Scalebar color changed" ) );
mComposerScaleBar->beginCommand( tr( "Scalebar stroke color changed" ) );
disconnectUpdateSignal();
QPen newPen( newColor );
mComposerScaleBar->setPen( newPen );
Expand Down
1 change: 1 addition & 0 deletions src/app/composer/qgscomposerscalebarwidget.h
Expand Up @@ -44,6 +44,7 @@ class QgsComposerScaleBarWidget: public QWidget, private Ui::QgsComposerScaleBar
void on_mColorPushButton_clicked();
void on_mStrokeColorPushButton_clicked();
void on_mFontButton_clicked();
void on_mFontColorPushButton_clicked();
void on_mStyleComboBox_currentIndexChanged( const QString& text );
void on_mLabelBarSpaceSpinBox_valueChanged( double d );
void on_mBoxSizeSpinBox_valueChanged( double d );
Expand Down
3 changes: 2 additions & 1 deletion src/core/composer/qgscomposerscalebar.cpp
Expand Up @@ -60,7 +60,7 @@ void QgsComposerScaleBar::paint( QPainter* painter, const QStyleOptionGraphicsIt
}

drawBackground( painter );
painter->setPen( QPen( QColor( 0, 0, 0 ) ) ); //draw all text black
painter->setPen( mFontPen ); //draw all text black

//x-offset is half of first label width because labels are drawn centered
QString firstLabel = firstLabelString();
Expand Down Expand Up @@ -228,6 +228,7 @@ void QgsComposerScaleBar::applyDefaultSettings()
mBrush.setStyle( Qt::SolidPattern );

mFont.setPointSizeF( 12.0 );
mFontColor = QColor(0,0,0);

mLabelBarSpace = 3.0;
mBoxContentSpace = 1.0;
Expand Down
5 changes: 5 additions & 0 deletions src/core/composer/qgscomposerscalebar.h
Expand Up @@ -18,6 +18,7 @@

#include "qgscomposeritem.h"
#include <QPen>
#include <QColor>

class QgsComposerMap;
class QgsScaleBarStyle;
Expand Down Expand Up @@ -74,6 +75,9 @@ class CORE_EXPORT QgsComposerScaleBar: public QgsComposerItem

QFont font() const;

QPen fontPen()const {return mFontPen;}
void setFontPen( const QPen& pen ) {mFontPen = pen;}

void setFont( const QFont& font );

QPen pen() const {return mPen;}
Expand Down Expand Up @@ -172,6 +176,7 @@ class CORE_EXPORT QgsComposerScaleBar: public QgsComposerItem
QString mUnitLabeling;
/**Font*/
QFont mFont;
QPen mFontPen;
/**Outline*/
QPen mPen;
/**Fill*/
Expand Down
2 changes: 1 addition & 1 deletion src/core/composer/qgsdoubleboxscalebarstyle.cpp
Expand Up @@ -49,7 +49,7 @@ void QgsDoubleBoxScaleBarStyle::draw( QPainter* p, double xOffset ) const
double segmentHeight = mScaleBar->height() / 2;

p->save();
p->setPen( p->pen() );
p->setPen( mScaleBar->pen() );

QList<QPair<double, double> > segmentInfo;
mScaleBar->segmentPositions( segmentInfo );
Expand Down
4 changes: 2 additions & 2 deletions src/core/composer/qgsscalebarstyle.cpp
Expand Up @@ -78,7 +78,7 @@ void QgsScaleBarStyle::drawLabels( QPainter* p ) const

if ( segmentCounter == 0 || segmentCounter >= nSegmentsLeft ) //don't draw label for intermediate left segments
{
p->setPen( QColor( 0, 0, 0 ) );
p->setPen( mScaleBar->fontColor() );//THIS SEEMS USELESS ?
mScaleBar->drawText( p, segmentIt->first - mScaleBar->textWidthMillimeters( mScaleBar->font(), currentNumericLabel ) / 2 + xOffset, mScaleBar->fontAscentMillimeters( mScaleBar->font() ) + mScaleBar->boxContentSpace(), currentNumericLabel, mScaleBar->font() );
}

Expand All @@ -93,7 +93,7 @@ void QgsScaleBarStyle::drawLabels( QPainter* p ) const
if ( !segmentInfo.isEmpty() )
{
currentNumericLabel = QString::number( currentLabelNumber / mScaleBar->numMapUnitsPerScaleBarUnit() );
p->setPen( QColor( 0, 0, 0 ) );
p->setPen( mScaleBar->fontColor() );//THIS SEEMS USELESS ?
mScaleBar->drawText( p, segmentInfo.last().first + mScaleBar->segmentMillimeters() - mScaleBar->textWidthMillimeters( mScaleBar->font(), currentNumericLabel ) / 2 + xOffset, mScaleBar->fontAscentMillimeters( mScaleBar->font() ) + mScaleBar->boxContentSpace(), currentNumericLabel + " " + mScaleBar->unitLabeling(), mScaleBar->font() );
}

Expand Down
3 changes: 2 additions & 1 deletion src/core/composer/qgssingleboxscalebarstyle.cpp
Expand Up @@ -43,7 +43,8 @@ void QgsSingleBoxScaleBarStyle::draw( QPainter* p, double xOffset ) const
double barTopPosition = mScaleBar->fontAscentMillimeters( mScaleBar->font() ) + mScaleBar->labelBarSpace() + mScaleBar->boxContentSpace();

p->save();
p->setPen( p->pen() );
p->setPen( mScaleBar->pen() );


QList<QPair<double, double> > segmentInfo;
mScaleBar->segmentPositions( segmentInfo );
Expand Down
9 changes: 3 additions & 6 deletions src/ui/qgscomposerscalebarwidgetbase.ui
Expand Up @@ -35,9 +35,9 @@
<property name="geometry">
<rect>
<x>0</x>
<y>-138</y>
<y>0</y>
<width>415</width>
<height>636</height>
<height>552</height>
</rect>
</property>
<attribute name="label">
Expand Down Expand Up @@ -270,10 +270,7 @@
</widget>
</item>
<item>
<widget class="QPushButton" name="mFontColorButton">
<property name="enabled">
<bool>false</bool>
</property>
<widget class="QPushButton" name="mFontColorPushButton">
<property name="text">
<string>Font color...</string>
</property>
Expand Down

0 comments on commit 310875e

Please sign in to comment.