A class for drawing datetime scales. More...
#include <qwt_date_scale_draw.h>
Classes | |
class | PrivateData |
Public Member Functions | |
QString | dateFormat (QwtDate::IntervalType) const |
virtual QwtText | label (double) const |
Convert a value into its representing label. More... | |
QwtDateScaleDraw (Qt::TimeSpec=Qt::LocalTime) | |
Constructor. More... | |
void | setDateFormat (QwtDate::IntervalType, const QString &) |
void | setTimeSpec (Qt::TimeSpec) |
void | setUtcOffset (int seconds) |
void | setWeek0Type (QwtDate::Week0Type) |
Qt::TimeSpec | timeSpec () const |
QDateTime | toDateTime (double) const |
int | utcOffset () const |
QwtDate::Week0Type | week0Type () const |
virtual | ~QwtDateScaleDraw () |
Destructor. More... | |
Public Member Functions inherited from QwtScaleDraw | |
Alignment | alignment () const |
QRect | boundingLabelRect (const QFont &, double val) const |
Find the bounding rectangle for the label. More... | |
virtual double | extent (const QFont &) const |
void | getBorderDistHint (const QFont &, int &start, int &end) const |
Determine the minimum border distance. More... | |
Qt::Alignment | labelAlignment () const |
QPointF | labelPosition (double val) const |
QRectF | labelRect (const QFont &, double val) const |
double | labelRotation () const |
QSizeF | labelSize (const QFont &, double val) const |
double | length () const |
int | maxLabelHeight (const QFont &) const |
int | maxLabelWidth (const QFont &) const |
int | minLabelDist (const QFont &) const |
int | minLength (const QFont &) const |
void | move (double x, double y) |
void | move (const QPointF &) |
Move the position of the scale. More... | |
Qt::Orientation | orientation () const |
QPointF | pos () const |
QwtScaleDraw () | |
Constructor. More... | |
void | setAlignment (Alignment) |
void | setLabelAlignment (Qt::Alignment) |
Change the label flags. More... | |
void | setLabelRotation (double rotation) |
void | setLength (double length) |
virtual | ~QwtScaleDraw () |
Destructor. More... | |
Public Member Functions inherited from QwtAbstractScaleDraw | |
virtual void | draw (QPainter *, const QPalette &) const |
Draw the scale. More... | |
void | enableComponent (ScaleComponent, bool enable=true) |
bool | hasComponent (ScaleComponent) const |
void | invalidateCache () |
double | maxTickLength () const |
double | minimumExtent () const |
int | penWidth () const |
QwtAbstractScaleDraw () | |
Constructor. More... | |
const QwtScaleDiv & | scaleDiv () const |
const QwtScaleMap & | scaleMap () const |
QwtScaleMap & | scaleMap () |
void | setMinimumExtent (double) |
Set a minimum for the extent. More... | |
void | setPenWidth (int width) |
Specify the width of the scale pen. More... | |
void | setScaleDiv (const QwtScaleDiv &s) |
void | setSpacing (double margin) |
Set the spacing between tick and labels. More... | |
void | setTickLength (QwtScaleDiv::TickType, double length) |
void | setTransformation (QwtTransform *) |
double | spacing () const |
Get the spacing. More... | |
double | tickLength (QwtScaleDiv::TickType) const |
virtual | ~QwtAbstractScaleDraw () |
Destructor. More... | |
Protected Member Functions | |
virtual QString | dateFormatOfDate (const QDateTime &, QwtDate::IntervalType) const |
virtual QwtDate::IntervalType | intervalType (const QwtScaleDiv &) const |
Protected Member Functions inherited from QwtScaleDraw | |
virtual void | drawBackbone (QPainter *) const |
virtual void | drawLabel (QPainter *, double val) const |
virtual void | drawTick (QPainter *, double val, double len) const |
QTransform | labelTransformation (const QPointF &, const QSizeF &) const |
Protected Member Functions inherited from QwtAbstractScaleDraw | |
const QwtText & | tickLabel (const QFont &, double value) const |
Convert a value into its representing label and cache it. More... | |
Private Attributes | |
PrivateData * | d_data |
Additional Inherited Members | |
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 |
Scale components. More... | |
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:
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.
Definition at line 52 of file qwt_date_scale_draw.h.
|
explicit |
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.
timeSpec | Time specification |
Definition at line 47 of file qwt_date_scale_draw.cpp.
|
virtual |
Destructor.
Definition at line 53 of file qwt_date_scale_draw.cpp.
QString QwtDateScaleDraw::dateFormat | ( | QwtDate::IntervalType | intervalType | ) | const |
intervalType | Interval type |
Definition at line 151 of file qwt_date_scale_draw.cpp.
|
protectedvirtual |
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.
dateTime | Datetime value |
intervalType | Interval type |
Definition at line 179 of file qwt_date_scale_draw.cpp.
|
protectedvirtual |
Find the less detailed datetime unit, where no rounding errors happen.
scaleDiv | Scale division |
Definition at line 222 of file qwt_date_scale_draw.cpp.
|
virtual |
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().
value | Value |
Reimplemented from QwtAbstractScaleDraw.
Definition at line 204 of file qwt_date_scale_draw.cpp.
void QwtDateScaleDraw::setDateFormat | ( | QwtDate::IntervalType | intervalType, |
const QString & | format | ||
) |
Set the default format string for an datetime interval type
intervalType | Interval type |
format | Default format string |
Definition at line 136 of file qwt_date_scale_draw.cpp.
void QwtDateScaleDraw::setTimeSpec | ( | Qt::TimeSpec | timeSpec | ) |
Set the time specification used for the tick labels
timeSpec | Time specification |
Definition at line 64 of file qwt_date_scale_draw.cpp.
void QwtDateScaleDraw::setUtcOffset | ( | int | seconds | ) |
Set the offset in seconds from Coordinated Universal Time
seconds | Offset in seconds |
Definition at line 88 of file qwt_date_scale_draw.cpp.
void QwtDateScaleDraw::setWeek0Type | ( | QwtDate::Week0Type | week0Type | ) |
Sets how to identify the first week of a year.
week0Type | Mode how to identify the first week of a year |
Definition at line 114 of file qwt_date_scale_draw.cpp.
Qt::TimeSpec QwtDateScaleDraw::timeSpec | ( | ) | const |
Definition at line 73 of file qwt_date_scale_draw.cpp.
QDateTime QwtDateScaleDraw::toDateTime | ( | double | value | ) | const |
Translate a double value into a QDateTime object.
Definition at line 268 of file qwt_date_scale_draw.cpp.
int QwtDateScaleDraw::utcOffset | ( | ) | const |
Definition at line 100 of file qwt_date_scale_draw.cpp.
QwtDate::Week0Type QwtDateScaleDraw::week0Type | ( | ) | const |
Definition at line 123 of file qwt_date_scale_draw.cpp.
|
private |
Definition at line 82 of file qwt_date_scale_draw.h.