QwtDateScaleDraw − A class for drawing datetime scales.
#include <qwt_date_scale_draw.h>
Inherits QwtScaleDraw.
QwtDateScaleDraw
(Qt::TimeSpec=Qt::LocalTime)
Constructor.
virtual ˜QwtDateScaleDraw ()
Destructor.
void setDateFormat (QwtDate::IntervalType,
const QString &)
QString dateFormat (QwtDate::IntervalType)
const
void setTimeSpec (Qt::TimeSpec)
Qt::TimeSpec timeSpec () const
void setUtcOffset (int seconds)
int utcOffset () const
void setWeek0Type (QwtDate::Week0Type)
QwtDate::Week0Type week0Type () const
virtual QwtText label (double) const override
Convert a value into its representing label.
QDateTime toDateTime (double) const
Public Member Functions inherited from QwtScaleDraw
QwtScaleDraw ()
Constructor.
virtual ˜QwtScaleDraw ()
Destructor.
void getBorderDistHint (const QFont &, int
&start, int &end) const
Determine the minimum border distance.
int minLabelDist (const QFont &) const
int minLength (const QFont &) const
virtual double extent (const QFont &) const
override
void move (double x, double y)
void move (const QPointF &)
Move the position of the scale.
void setLength (double length)
Alignment alignment () const
void setAlignment (Alignment)
Qt::Orientation orientation () const
QPointF pos () const
double length () const
void setLabelAlignment (Qt::Alignment)
Change the label flags.
Qt::Alignment labelAlignment () const
void setLabelRotation (double rotation)
double labelRotation () const
int maxLabelHeight (const QFont &) const
int maxLabelWidth (const QFont &) const
QPointF labelPosition (double value) const
QRectF labelRect (const QFont &, double value)
const
QSizeF labelSize (const QFont &, double value)
const
QRect boundingLabelRect (const QFont &, double
value) const
Find the bounding rectangle for the label.
Public Member Functions inherited from QwtAbstractScaleDraw
QwtAbstractScaleDraw ()
Constructor.
virtual ˜QwtAbstractScaleDraw ()
Destructor.
void setScaleDiv (const QwtScaleDiv &)
const QwtScaleDiv & scaleDiv () const
void setTransformation (QwtTransform *)
const QwtScaleMap & scaleMap () const
QwtScaleMap & scaleMap ()
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)
Set the spacing between tick and labels.
double spacing () const
Get the spacing.
void setPenWidthF (qreal width)
Specify the width of the scale pen.
qreal penWidthF () const
virtual void draw (QPainter *, const QPalette &)
const
Draw the scale.
void setMinimumExtent (double)
Set a minimum for the extent.
double minimumExtent () const
void invalidateCache ()
virtual
QwtDate::IntervalType intervalType (const
QwtScaleDiv &) const
virtual QString dateFormatOfDate (const QDateTime
&, QwtDate::IntervalType) const
Protected Member Functions inherited from QwtScaleDraw
QTransform
labelTransformation (const QPointF &, const
QSizeF &) const
virtual void drawTick (QPainter *, double value,
double len) const override
virtual void drawBackbone (QPainter *) const override
virtual void drawLabel (QPainter *, double value)
const override
Protected Member Functions inherited from QwtAbstractScaleDraw
const QwtText &
tickLabel (const QFont &, double value) const
Convert a value into its representing label and cache
it.
Public Types inherited from QwtScaleDraw
enum Alignment { BottomScale, TopScale, LeftScale, RightScale }
Public Types inherited from QwtAbstractScaleDraw
enum ScaleComponent {
Backbone = 0x01, Ticks = 0x02, Labels =
0x04 }
typedef QFlags< ScaleComponent >
ScaleComponents
A class for drawing datetime scales.
QwtDateScaleDraw displays values as datetime labels. The format of the labels depends on the alignment of the major tick labels.
The default format strings are:
|
• |
Millisecond |
"hh:mm:ss:zzz\nddd dd MMM yyyy"
|
• |
Second |
"hh:mm:ss\nddd dd MMM yyyy"
|
• |
Minute |
"hh:mm\nddd dd MMM yyyy"
|
• |
Hour |
"hh:mm\nddd dd MMM yyyy"
|
• |
Day |
"ddd dd MMM yyyy"
|
• |
Week |
"Www yyyy"
|
• |
Month |
"MMM yyyy"
|
• |
Year |
"yyyy"
The format strings can be modified using setDateFormat() or individually for each tick label by overloading dateFormatOfDate(),
Usually QwtDateScaleDraw is used in combination with QwtDateScaleEngine, that calculates scales for datetime intervals.
See also
QwtDateScaleEngine, QwtPlot::setAxisScaleDraw()
Definition at line 52 of file qwt_date_scale_draw.h.
Constructor. The default setting is to display tick labels for the given time specification. The first week of a year is defined like for QwtDate::FirstThursday.
Parameters
timeSpec Time specification
See also
setTimeSpec(), setWeek0Type()
Definition at line 48 of file qwt_date_scale_draw.cpp.
Destructor.
Definition at line 54 of file qwt_date_scale_draw.cpp.
Parameters
intervalType Interval type
Returns
Default format string for an datetime interval type
See also
setDateFormat(), dateFormatOfDate()
Definition at line 152 of file qwt_date_scale_draw.cpp.
Format string for the representation of a datetime
dateFormatOfDate() is intended to be overloaded for situations, where formats are individual for specific datetime values.
The default setting ignores dateTime and return the default format for the interval type.
Parameters
dateTime Datetime value
intervalType Interval type
Returns
Format string
See also
setDateFormat(), QwtDate::toString()
Definition at line 180 of file qwt_date_scale_draw.cpp.
Find the less detailed datetime unit, where no rounding errors happen.
Parameters
scaleDiv Scale division
Returns
Interval type
See also
dateFormatOfDate()
Definition at line 223 of file qwt_date_scale_draw.cpp.
Convert a value into its representing label. The value is converted to a datetime value using toDateTime() and converted to a plain text using QwtDate::toString().
Parameters
value Value
Returns
Label string.
See also
dateFormatOfDate()
Reimplemented from QwtAbstractScaleDraw.
Definition at line 205 of file qwt_date_scale_draw.cpp.
Set the default format string for an datetime interval type
Parameters
intervalType Interval
type
format Default format string
See also
dateFormat(), dateFormatOfDate(), QwtDate::toString()
Definition at line 137 of file qwt_date_scale_draw.cpp.
Set the time specification used for the tick labels
Parameters
timeSpec Time specification
See also
timeSpec(), setUtcOffset(), toDateTime()
Definition at line 65 of file qwt_date_scale_draw.cpp.
Set the offset in seconds from Coordinated Universal Time
Parameters
seconds Offset in seconds
Note
The offset has no effect beside for the time specification Qt::OffsetFromUTC.
See also
QDate::utcOffset(), setTimeSpec(), toDateTime()
Definition at line 89 of file qwt_date_scale_draw.cpp.
Sets how to identify the first week of a year.
Parameters
week0Type Mode how to identify the first week of a year
See also
week0Type().
Note
week0Type has no effect beside for intervals classified as QwtDate::Week.
Definition at line 115 of file qwt_date_scale_draw.cpp.
Returns
Time specification used for the tick labels
See also
setTimeSpec(), utcOffset(), toDateTime()
Definition at line 74 of file qwt_date_scale_draw.cpp.
Translate a double value into a QDateTime object.
Returns
QDateTime object initialized with timeSpec() and utcOffset().
See also
timeSpec(), utcOffset(), QwtDate::toDateTime()
Definition at line 269 of file qwt_date_scale_draw.cpp.
Returns
Offset in seconds from Coordinated Universal Time
Note
The offset has no effect beside for the time specification Qt::OffsetFromUTC.
See also
QDate::setUtcOffset(), setTimeSpec(), toDateTime()
Definition at line 101 of file qwt_date_scale_draw.cpp.
Returns
Setting how to identify the first week of a year.
See also
setWeek0Type()
Definition at line 124 of file qwt_date_scale_draw.cpp.
Generated automatically by Doxygen for Qwt User’s Guide from the source code.