# QwtScaleWidget Class Reference

A Widget which contains a scale. More...

`#include <qwt_scale_widget.h>`

List of all members.

## Public Types

enum | LayoutFlag { TitleInverted = 1 }
typedef QFlags< LayoutFlag > | LayoutFlags

## Signals

void | scaleDivChanged ()

## Public Member Functions

QwtScaleDraw::Alignment | alignment () const
QwtInterval | colorBarInterval () const
QRectF | colorBarRect (const QRectF &) const
int | colorBarWidth () const
const QwtColorMap * | colorMap () const
int | dimForLength (int length, const QFont &scaleFont) const
void | drawColorBar (QPainter *painter, const QRectF &) const
void | drawTitle (QPainter *painter, QwtScaleDraw::Alignment, const QRectF &rect) const
int | endBorderDist () const
void | getBorderDistHint (int &start, int &end) const
void | getMinBorderDist (int &start, int &end) const
bool | isColorBarEnabled () const
int | margin () const
virtual QSize | minimumSizeHint () const
| QwtScaleWidget (QWidget *parent=NULL)
| QwtScaleWidget (QwtScaleDraw::Alignment, QWidget *parent=NULL)
const QwtScaleDraw * | scaleDraw () const
QwtScaleDraw * | scaleDraw ()
void | setAlignment (QwtScaleDraw::Alignment)
void | setBorderDist (int start, int end)
void | setColorBarEnabled (bool)
void | setColorBarWidth (int)
void | setColorMap (const QwtInterval &, QwtColorMap *)
void | setLabelAlignment (Qt::Alignment)
void | setLabelRotation (double rotation)
void | setLayoutFlag (LayoutFlag, bool on)
void | setMargin (int)
void | setMinBorderDist (int start, int end)
void | setScaleDiv (QwtScaleTransformation *, const QwtScaleDiv &sd)
void | setScaleDraw (QwtScaleDraw *)
void | setSpacing (int td)
void | setTitle (const QString &title)
void | setTitle (const QwtText &title)
virtual QSize | sizeHint () const
int | spacing () const
int | startBorderDist () const
bool | testLayoutFlag (LayoutFlag) const
QwtText | title () const
int | titleHeightForWidth (int width) const
virtual | ~QwtScaleWidget ()

## Protected Member Functions

void | draw (QPainter *p) const
void | layoutScale (bool update=true)
virtual void | paintEvent (QPaintEvent *)
virtual void | resizeEvent (QResizeEvent *)
void | scaleChange ()

## Detailed Description

A Widget which contains a scale.

This Widget can be used to decorate composite widgets with a scale.

## Member Typedef Documentation

typedef QFlags<LayoutFlag> QwtScaleWidget::LayoutFlags

Layout flags of the title.

## Member Enumeration Documentation

enum QwtScaleWidget::LayoutFlag

Layout flags of the title.

Enumerator:

  TitleInverted | The title of vertical scales is painted from top to bottom. Otherwise it is painted from bottom to top.

## Constructor & Destructor Documentation

QwtScaleWidget::QwtScaleWidget | ( | QWidget * | parent = `NULL` | ) | `[explicit]`

Create a scale with the position QwtScaleWidget::Left.

Parameters:

  parent | Parent widget

QwtScaleWidget::QwtScaleWidget | ( | QwtScaleDraw::Alignment | align,
|  | QWidget * | parent = `NULL`
| ) |  | `[explicit]`

Constructor.

Parameters:

  align | Alignment.
  parent | Parent widget

QwtScaleWidget::~QwtScaleWidget | ( |  | ) | `[virtual]`

Destructor.

## Member Function Documentation

QwtScaleDraw::Alignment QwtScaleWidget::alignment | ( |  | ) | const

Returns:
  position

See also:
  setPosition()

QwtInterval QwtScaleWidget::colorBarInterval | ( |  | ) | const

Returns:
  Value interval for the color bar

See also:
  setColorMap(), colorMap()

QRectF QwtScaleWidget::colorBarRect | ( | const QRectF & | rect | ) | const

Calculate the the rectangle for the color bar

Parameters:

  rect | Bounding rectangle for all components of the scale

Returns:
  Rectabgle for the color bar

int QwtScaleWidget::colorBarWidth | ( |  | ) | const

Returns:
  Width of the color bar

See also:
  setColorBarEnabled(), setColorBarEnabled()

const QwtColorMap * QwtScaleWidget::colorMap | ( |  | ) | const

Returns:
  Color map

See also:
  setColorMap(), colorBarInterval()

int QwtScaleWidget::dimForLength | ( | int | length,
|  | const QFont & | scaleFont
| ) |  | const

Find the minimum dimension for a given length. dim is the height, length the width seen in direction of the title.

Parameters:

  length | width for horizontal, height for vertical scales
  scaleFont | Font of the scale

Returns:
  height for horizontal, width for vertical scales

void QwtScaleWidget::draw | ( | QPainter * | p | ) | const`[protected]`

draw the scale

void QwtScaleWidget::drawColorBar | ( | QPainter * | painter,
|  | const QRectF & | rect
| ) |  | const

Draw the color bar of the scale widget

Parameters:

  painter | Painter
  rect | Bounding rectangle for the color bar

See also:
  setColorBarEnabled()

void QwtScaleWidget::drawTitle | ( | QPainter * | painter,
|  | QwtScaleDraw::Alignment | align,
|  | const QRectF & | rect
| ) |  | const

Rotate and paint a title according to its position into a given rectangle.

Parameters:

  painter | Painter
  align | Alignment
  rect | Bounding rectangle

int QwtScaleWidget::endBorderDist | ( |  | ) | const

Returns:
  end border distance

See also:
  setBorderDist()

void QwtScaleWidget::getBorderDistHint | ( | int & | start,
|  | int & | end
| ) |  | const

Calculate a hint for the border distances.

This member function calculates the distance of the scale's endpoints from the widget borders which is required for the mark labels to fit into the widget. The maximum of this distance an the minimum border distance is returned.

Warning:
  - The minimum border distance depends on the font.

See also:
  setMinBorderDist(), getMinBorderDist(), setBorderDist()

void QwtScaleWidget::getMinBorderDist | ( | int & | start,
|  | int & | end
| ) |  | const

Get the minimum value for the distances of the scale's endpoints from the widget borders.

See also:
  setMinBorderDist(), getBorderDistHint()

bool QwtScaleWidget::isColorBarEnabled | ( |  | ) | const

Returns:
  true, when the color bar is enabled

See also:
  setColorBarEnabled(), setColorBarWidth()

void QwtScaleWidget::layoutScale | ( | bool | update_geometry = `true` | ) | `[protected]`

Recalculate the scale's geometry and layout based on the current rect and fonts.

Parameters:

  update_geometry | Notify the layout system and call update to redraw the scale

int QwtScaleWidget::margin | ( |  | ) | const

Returns:
  margin

See also:
  setMargin()

QSize QwtScaleWidget::minimumSizeHint | ( |  | ) | const`[virtual]`

Returns:
  a minimum size hint

void QwtScaleWidget::paintEvent | ( | QPaintEvent * | event | ) | `[protected, virtual]`

paintEvent

void QwtScaleWidget::resizeEvent | ( | QResizeEvent * | event | ) | `[protected, virtual]`

Event handler for resize event

Parameters:

  event | Resize event

void QwtScaleWidget::scaleChange | ( |  | ) | `[protected]`

Notify a change of the scale.

This virtual function can be overloaded by derived classes. The default implementation updates the geometry and repaints the widget.

void QwtScaleWidget::scaleDivChanged | ( |  | ) | `[signal]`

Signal emitted, whenever the scale divison changes.

const QwtScaleDraw * QwtScaleWidget::scaleDraw | ( |  | ) | const

scaleDraw of this scale

See also:
  setScaleDraw(), QwtScaleDraw::setScaleDraw()

QwtScaleDraw * QwtScaleWidget::scaleDraw | ( |  | ) |

scaleDraw of this scale

See also:
  QwtScaleDraw::setScaleDraw()

void QwtScaleWidget::setAlignment | ( | QwtScaleDraw::Alignment | alignment | ) |

Change the alignment

Parameters:

  alignment | New alignment

See also:
  alignment()

void QwtScaleWidget::setBorderDist | ( | int | dist1,
|  | int | dist2
| ) |  |

Specify distances of the scale's endpoints from the widget's borders. The actual borders will never be less than minimum border distance.

Parameters:

  dist1 | Left or top Distance
  dist2 | Right or bottom distance

See also:
  borderDist()

void QwtScaleWidget::setColorBarEnabled | ( | bool | on | ) |

En/disable a color bar associated to the scale

See also:
  isColorBarEnabled(), setColorBarWidth()

void QwtScaleWidget::setColorBarWidth | ( | int | width | ) |

Set the width of the color bar

Parameters:

  width | Width

See also:
  colorBarWidth(), setColorBarEnabled()

void QwtScaleWidget::setColorMap | ( | const QwtInterval & | interval,
|  | QwtColorMap * | colorMap
| ) |  |

Set the color map and value interval, that are used for displaying the color bar.

Parameters:

  interval | Value interval
  colorMap | Color map

See also:
  colorMap(), colorBarInterval()

void QwtScaleWidget::setLabelAlignment | ( | Qt::Alignment | alignment | ) |

Change the alignment for the labels.

See also:
  QwtScaleDraw::setLabelAlignment(), setLabelRotation()

void QwtScaleWidget::setLabelRotation | ( | double | rotation | ) |

Change the rotation for the labels. See QwtScaleDraw::setLabelRotation().

Parameters:

  rotation | Rotation

See also:
  QwtScaleDraw::setLabelRotation(), setLabelFlags()

void QwtScaleWidget::setLayoutFlag | ( | LayoutFlag | flag,
|  | bool | on
| ) |  |

Toggle an layout flag

Parameters:

  flag | Layout flag
  on | true/false

See also:
  testLayoutFlag(), LayoutFlag

void QwtScaleWidget::setMargin | ( | int | margin | ) |

Specify the margin to the colorBar/base line.

Parameters:

  margin | Margin

See also:
  margin()

void QwtScaleWidget::setMinBorderDist | ( | int | start,
|  | int | end
| ) |  |

Set a minimum value for the distances of the scale's endpoints from the widget borders. This is useful to avoid that the scales are "jumping", when the tick labels or their positions change often.

Parameters:

  start | Minimum for the start border
  end | Minimum for the end border

See also:
  getMinBorderDist(), getBorderDistHint()

void QwtScaleWidget::setScaleDiv | ( | QwtScaleTransformation * | transformation,
|  | const QwtScaleDiv & | scaleDiv
| ) |  |

Assign a scale division.

The scale division determines where to set the tick marks.

Parameters:

  transformation | Transformation, needed to translate between scale and pixal values
  scaleDiv | Scale Division

See also:
  For more information about scale divisions, see QwtScaleDiv.

void QwtScaleWidget::setScaleDraw | ( | QwtScaleDraw * | sd | ) |

Set a scale draw sd has to be created with new and will be deleted in ~QwtScaleWidget() or the next call of setScaleDraw().

Parameters:

  sd | ScaleDraw object

See also:
  scaleDraw()

void QwtScaleWidget::setSpacing | ( | int | spacing | ) |

Specify the distance between color bar, scale and title.

Parameters:

  spacing | Spacing

See also:
  spacing()

void QwtScaleWidget::setTitle | ( | const QString & | title | ) |

Give title new text contents

Parameters:

  title | New title

See also:
  title(), setTitle(const QwtText &);

void QwtScaleWidget::setTitle | ( | const QwtText & | title | ) |

Give title new text contents

Parameters:

  title | New title

See also:
  title()

Warning:
  The title flags are interpreted in direction of the label, AlignTop, AlignBottom can't be set as the title will always be aligned to the scale.

QSize QwtScaleWidget::sizeHint | ( |  | ) | const`[virtual]`

Returns:
  a size hint

int QwtScaleWidget::spacing | ( |  | ) | const

Returns:
  distance between scale and title

See also:
  setMargin()

int QwtScaleWidget::startBorderDist | ( |  | ) | const

Returns:
  start border distance

See also:
  setBorderDist()

bool QwtScaleWidget::testLayoutFlag | ( | LayoutFlag | flag | ) | const

Test a layout flag

Parameters:

  flag | Layout flag

Returns:
  true/false

See also:
  setLayoutFlag(), LayoutFlag

QwtText QwtScaleWidget::title | ( |  | ) | const

Returns:
  title

See also:
  setTitle()

int QwtScaleWidget::titleHeightForWidth | ( | int | width | ) | const

Find the height of the title for a given width.

Parameters:

  width | Width

Returns:
  height Height