17 #ifndef QGSSCALEBARSETTINGS_H 18 #define QGSSCALEBARSETTINGS_H 20 #include "qgis_core.h" 56 SegmentSizeFitWidth = 1
64 mPen = QPen( mLineColor );
65 mPen.setJoinStyle( mLineJoinStyle );
66 mPen.setCapStyle( mLineCapStyle );
67 mPen.setWidthF( mLineWidth );
69 mBrush.setColor( mFillColor );
70 mBrush.setStyle( Qt::SolidPattern );
72 mBrush2.setColor( mFillColor2 );
73 mBrush2.setStyle( Qt::SolidPattern );
75 mTextFormat.setSize( 12.0 );
77 mTextFormat.setColor( QColor( 0, 0, 0 ) );
247 mTextFormat.setFont( font );
248 if ( font.pointSizeF() > 0 )
250 mTextFormat.setSize( font.pointSizeF() );
253 else if ( font.pixelSize() > 0 )
255 mTextFormat.setSize( font.pixelSize() );
288 void setFillColor(
const QColor &color ) { mFillColor = color; mBrush.setColor( color ); }
302 void setFillColor2(
const QColor &color ) { mFillColor2 = color; mBrush2.setColor( color ); }
314 void setLineColor(
const QColor &color ) { mLineColor = color; mPen.setColor( mLineColor ); }
326 void setLineWidth(
double width ) { mLineWidth = width; mPen.setWidthF( width ); }
333 QPen
pen()
const {
return mPen; }
339 void setPen(
const QPen &pen ) { mPen = pen; }
347 QBrush
brush()
const {
return mBrush; }
353 void setBrush(
const QBrush &brush ) { mBrush = brush; }
361 QBrush
brush2()
const {
return mBrush2; }
367 void setBrush2(
const QBrush &brush ) { mBrush2 = brush; }
373 double height()
const {
return mHeight; }
427 void setLineJoinStyle( Qt::PenJoinStyle style ) { mLineJoinStyle = style; mPen.setJoinStyle( style ); }
439 void setLineCapStyle( Qt::PenCapStyle style ) { mLineCapStyle = style; mPen.setCapStyle( style ); }
444 int mNumSegments = 2;
446 int mNumSegmentsLeft = 0;
448 double mNumUnitsPerSegment = 0;
450 double mNumMapUnitsPerScaleBarUnit = 1.0;
454 double mMinBarWidth = 50.0;
456 double mMaxBarWidth = 150.0;
459 QString mUnitLabeling;
465 QColor mFillColor = QColor( 0, 0, 0 );
467 QColor mFillColor2 = QColor( 255, 255, 255 );
469 QColor mLineColor = QColor( 0, 0, 0 );
471 double mLineWidth = 0.3;
479 double mHeight = 3.0;
482 double mLabelBarSpace = 3.0;
485 double mBoxContentSpace = 1.0;
491 Qt::PenJoinStyle mLineJoinStyle = Qt::MiterJoin;
492 Qt::PenCapStyle mLineCapStyle = Qt::SquareCap;
496 #endif // QGSSCALEBARSETTINGS_H void setMinimumBarWidth(double width)
Sets the minimum width (in millimeters) for scale bar segments.
double mapUnitsPerScaleBarUnit() const
Returns the number of map units per scale bar unit used by the scalebar.
QBrush brush() const
Returns the primary brush used for filling the scalebar.
void setLineColor(const QColor &color)
Sets the color used for lines in the scalebar.
QString unitLabel() const
Returns the label for units.
QgsTextFormat textFormat() const
Returns the text format used for drawing text in the scalebar.
QPen pen() const
Returns the pen used for drawing outlines in the scalebar.
Alignment alignment() const
Returns the scalebar alignment.
void setPen(const QPen &pen)
Sets the pen used for drawing outlines in the scalebar.
QColor fillColor2() const
Returns the secondary color used for fills in the scalebar.
SegmentSizeMode segmentSizeMode() const
Returns the size mode for the scale bar segments.
double lineWidth() const
Returns the line width in millimeters for lines in the scalebar.
Alignment
Scalebar alignment.
QColor lineColor() const
Returns the color used for lines in the scalebar.
Q_DECL_DEPRECATED QFont font() const
Returns the font used for drawing text in the scalebar.
QColor fillColor() const
Returns the color used for fills in the scalebar.
double height() const
Returns the scalebar height (in millimeters).
void setFillColor(const QColor &color)
Sets the color used for fills in the scalebar.
int numberOfSegments() const
Returns the number of segments included in the scalebar.
double minimumBarWidth() const
Returns the minimum width (in millimeters) for scale bar segments.
void setLineCapStyle(Qt::PenCapStyle style)
Sets the cap style used when drawing the lines in the scalebar.
void setMapUnitsPerScaleBarUnit(double units)
Sets the number of map units per scale bar unit used by the scalebar.
void setAlignment(Alignment alignment)
Sets the scalebar alignment.
QgsUnitTypes::DistanceUnit units() const
Returns the distance units used by the scalebar.
double boxContentSpace() const
Returns the spacing (margin) between the scalebar box and content in millimeters. ...
double labelBarSpace() const
Returns the spacing (in millimeters) between labels and the scalebar.
void setMaximumBarWidth(double width)
Sets the maximum width (in millimeters) for scale bar segments.
void setBoxContentSpace(double space)
Sets the space (margin) between the scalebar box and content in millimeters.
void setUnitsPerSegment(double units)
Sets the number of scalebar units per segment.
void setSegmentSizeMode(SegmentSizeMode mode)
Sets the size mode for scale bar segments.
void setFillColor2(const QColor &color)
Sets the secondary color used for fills in the scalebar.
SegmentSizeMode
Modes for setting size for scale bar segments.
QgsScaleBarSettings()
Constructor for QgsScaleBarSettings.
double maximumBarWidth() const
Returns the maximum width (in millimeters) for scale bar segments.
QgsTextFormat & textFormat()
Returns the text format used for drawing text in the scalebar.
DistanceUnit
Units of distance.
void setHeight(double height)
Sets the scalebar height (in millimeters).
Q_DECL_DEPRECATED QColor fontColor() const
Returns the color used for drawing text in the scalebar.
Q_DECL_DEPRECATED void setFontColor(const QColor &color)
Sets the color used for drawing text in the scalebar.
void setLineJoinStyle(Qt::PenJoinStyle style)
Sets the join style used when drawing the lines in the scalebar.
void setLineWidth(double width)
Sets the line width in millimeters for lines in the scalebar.
void setLabelBarSpace(double space)
Sets the spacing (in millimeters) between labels and the scalebar.
void setBrush2(const QBrush &brush)
Sets the secondary brush used for filling the scalebar.
double unitsPerSegment() const
Returns the number of scalebar units per segment.
Qt::PenCapStyle lineCapStyle() const
Returns the cap style used for drawing lines in the scalebar.
void setNumberOfSegmentsLeft(int segments)
Sets the number of segments included in the left part of the scalebar.
QBrush brush2() const
Returns the secondary brush for the scalebar.
void setTextFormat(const QgsTextFormat &format)
Sets the text format used for drawing text in the scalebar.
Container for all settings relating to text rendering.
Qt::PenJoinStyle lineJoinStyle() const
Returns the join style used for drawing lines in the scalebar.
int numberOfSegmentsLeft() const
Returns the number of segments included in the left part of the scalebar.
void setUnits(QgsUnitTypes::DistanceUnit units)
Sets the distance units used by the scalebar.
void setBrush(const QBrush &brush)
Sets the primary brush used for filling the scalebar.
Q_DECL_DEPRECATED void setFont(const QFont &font)
Sets the font used for drawing text in the scalebar.
void setUnitLabel(const QString &label)
Sets the label for units.
void setNumberOfSegments(int segments)
Sets the number of segments included in the scalebar.
The QgsScaleBarSettings class stores the appearance and layout settings for scalebar drawing with Qgs...