Qwt User's Guide  6.1.3
QwtCompassScaleDraw Class Reference

A special scale draw made for QwtCompass. More...

#include <qwt_compass.h>

Inheritance diagram for QwtCompassScaleDraw:

Public Member Functions

 QwtCompassScaleDraw ()
 Constructor. More...
 
 QwtCompassScaleDraw (const QMap< double, QString > &map)
 Constructor. More...
 
void setLabelMap (const QMap< double, QString > &map)
 Set a map, mapping values to labels. More...
 
QMap< double, QString > labelMap () const
 
virtual QwtText label (double value) const
 
- Public Member Functions inherited from QwtRoundScaleDraw
 QwtRoundScaleDraw ()
 Constructor. More...
 
virtual ~QwtRoundScaleDraw ()
 Destructor.
 
void setRadius (double radius)
 
double radius () const
 
void moveCenter (double x, double y)
 Move the center of the scale draw, leaving the radius unchanged.
 
void moveCenter (const QPointF &)
 
QPointF center () const
 Get the center of the scale.
 
void setAngleRange (double angle1, double angle2)
 Adjust the baseline circle segment for round scales. More...
 
virtual double extent (const QFont &) const
 
- Public Member Functions inherited from QwtAbstractScaleDraw
 QwtAbstractScaleDraw ()
 Constructor. More...
 
virtual ~QwtAbstractScaleDraw ()
 Destructor.
 
void setScaleDiv (const QwtScaleDiv &s)
 
const QwtScaleDivscaleDiv () const
 
void setTransformation (QwtTransform *)
 
const QwtScaleMapscaleMap () const
 
QwtScaleMapscaleMap ()
 
void enableComponent (ScaleComponent, bool enable=true)
 
bool hasComponent (ScaleComponent) const
 
void setTickLength (QwtScaleDiv::TickType, double length)
 
double tickLength (QwtScaleDiv::TickType) const
 
double maxTickLength () const
 
void setSpacing (double margin)
 Set the spacing between tick and labels. More...
 
double spacing () const
 Get the spacing. More...
 
void setPenWidth (int width)
 Specify the width of the scale pen. More...
 
int penWidth () const
 
virtual void draw (QPainter *, const QPalette &) const
 Draw the scale. More...
 
void setMinimumExtent (double)
 Set a minimum for the extent. More...
 
double minimumExtent () const
 

Additional Inherited Members

- Public Types inherited from QwtAbstractScaleDraw
enum  ScaleComponent { Backbone = 0x01, Ticks = 0x02, Labels = 0x04 }
 
typedef QFlags< ScaleComponentScaleComponents
 Scale components.
 
- Protected Member Functions inherited from QwtRoundScaleDraw
virtual void drawTick (QPainter *, double val, double len) const
 
virtual void drawBackbone (QPainter *) const
 
virtual void drawLabel (QPainter *, double val) const
 
- Protected Member Functions inherited from QwtAbstractScaleDraw
void invalidateCache ()
 
const QwtTexttickLabel (const QFont &, double value) const
 Convert a value into its representing label and cache it. More...
 

Detailed Description

A special scale draw made for QwtCompass.

QwtCompassScaleDraw maps values to strings using a special map, that can be modified by the application

The default map consists of the labels N, NE, E, SE, S, SW, W, NW.

See also
QwtCompass

Constructor & Destructor Documentation

QwtCompassScaleDraw::QwtCompassScaleDraw ( )
explicit

Constructor.

Initializes a label map for multiples of 45 degrees

QwtCompassScaleDraw::QwtCompassScaleDraw ( const QMap< double, QString > &  map)
explicit

Constructor.

Parameters
mapValue to label map

Member Function Documentation

QwtText QwtCompassScaleDraw::label ( double  value) const
virtual

Map a value to a corresponding label

Parameters
valueValue that will be mapped

label() looks in the labelMap() for a corresponding label for value or returns an null text.

Returns
Label, or QString::null
See also
labelMap(), setLabelMap()

Reimplemented from QwtAbstractScaleDraw.

QMap< double, QString > QwtCompassScaleDraw::labelMap ( ) const
Returns
map, mapping values to labels
See also
setLabelMap()
void QwtCompassScaleDraw::setLabelMap ( const QMap< double, QString > &  map)

Set a map, mapping values to labels.

Parameters
mapValue to label map

The values of the major ticks are found by looking into this map. The default map consists of the labels N, NE, E, SE, S, SW, W, NW.

Warning
The map will have no effect for values that are no major tick values. Major ticks can be changed by QwtScaleDraw::setScale
See also
labelMap(), scaleDraw(), setScale()