KDChart::GlobalMeasureScaling Class Reference

#include <KDChartMeasure.h>

Collaboration diagram for KDChart::GlobalMeasureScaling:

Collaboration graph
[legend]
List of all members.

Detailed Description

Auxiliary class used by the KDChart::Measure and KDChart::Chart class.

Normally there should be no need to call any of these methods yourself.

They are used by KDChart::Chart::paint( QPainter*, const QRect& ) to adjust all of the relative Measures according to the target rectangle's size.

Default factors are (1.0, 1.0)

Definition at line 149 of file KDChartMeasure.h.

Public Member Functions

 GlobalMeasureScaling ()
virtual ~GlobalMeasureScaling ()

Static Public Member Functions

static const QPair< qreal,
qreal > 
currentFactors ()
 Returns the currently active factors.
static GlobalMeasureScalinginstance ()
static QPaintDevice * paintDevice ()
 Returns the paint device usable for calculating fort metrics.
static void resetFactors ()
 Reset factors to the values active before the previous call of setFactors.
static void setFactors (qreal factorX, qreal factorY)
 Set new factors to be used by all Measure objects from now on.
static void setPaintDevice (QPaintDevice *paintDevice)
 Sets the paint device usable for calculating fort metrics.


Constructor & Destructor Documentation

KDChart::GlobalMeasureScaling::GlobalMeasureScaling (  ) 

Definition at line 187 of file KDChartMeasure.cpp.

00188 {
00189     mFactors.push( qMakePair(1.0, 1.0) );
00190 }

KDChart::GlobalMeasureScaling::~GlobalMeasureScaling (  )  [virtual]

Definition at line 192 of file KDChartMeasure.cpp.

00193 {
00194     // this space left empty intentionally
00195 }


Member Function Documentation

const QPair< qreal, qreal > KDChart::GlobalMeasureScaling::currentFactors (  )  [static]

Returns the currently active factors.

Definition at line 215 of file KDChartMeasure.cpp.

References instance(), and mFactors.

Referenced by KDChart::Measure::sizeOfArea().

00216 {
00217     return instance()->mFactors.top();
00218 }

GlobalMeasureScaling * KDChart::GlobalMeasureScaling::instance (  )  [static]

Definition at line 197 of file KDChartMeasure.cpp.

Referenced by currentFactors(), KDChart::Chart::paint(), paintDevice(), resetFactors(), setFactors(), setPaintDevice(), and KDChart::Measure::sizeOfArea().

00198 {
00199     static GlobalMeasureScaling instance;
00200     return &instance;
00201 }

QPaintDevice * KDChart::GlobalMeasureScaling::paintDevice (  )  [static]

Returns the paint device usable for calculating fort metrics.

Definition at line 225 of file KDChartMeasure.cpp.

References instance(), and m_paintDevice.

Referenced by KDChart::CartesianAxis::maximumSize(), and KDChart::CartesianAxis::paintCtx().

00226 {
00227     return instance()->m_paintDevice;
00228 }

void KDChart::GlobalMeasureScaling::resetFactors (  )  [static]

Reset factors to the values active before the previous call of setFactors.

This works on a stack, so recursive calls works fine, like: setFactors, setFactors, unserFactors, unsetFactors

Definition at line 208 of file KDChartMeasure.cpp.

References instance(), and mFactors.

Referenced by KDChart::Chart::paint().

00209 {
00210     // never remove the initial (1.0. 1.0) setting
00211     if( instance()->mFactors.count() > 1 )
00212         instance()->mFactors.pop();
00213 }

void KDChart::GlobalMeasureScaling::setFactors ( qreal  factorX,
qreal  factorY 
) [static]

Set new factors to be used by all Measure objects from now on.

Previous values will be stored.

Definition at line 203 of file KDChartMeasure.cpp.

References instance(), and mFactors.

Referenced by KDChart::Chart::paint().

00204 {
00205     instance()->mFactors.push( qMakePair(factorX, factorY) );
00206 }

void KDChart::GlobalMeasureScaling::setPaintDevice ( QPaintDevice *  paintDevice  )  [static]

Sets the paint device usable for calculating fort metrics.

Definition at line 220 of file KDChartMeasure.cpp.

References instance(), and m_paintDevice.

Referenced by KDChart::Chart::paint().

00221 {
00222     instance()->m_paintDevice = paintDevice;
00223 }


The documentation for this class was generated from the following files:
Generated on Mon Sep 17 16:18:16 2007 for KD Chart 2 by  doxygen 1.5.1