KD Chart API Documentation  3.1
Public Types | Public Member Functions | List of all members
KDGantt::DateTimeScaleFormatter Class Reference

This class formats dates and times used in DateTimeGrid follawing a given format. More...

#include <kdganttdatetimegrid.h>

Public Types

enum  Range {
  Second , Minute , Hour , Day ,
  Week , Month , Year
}
 

Public Member Functions

 DateTimeScaleFormatter (const DateTimeScaleFormatter &other)
 
 DateTimeScaleFormatter (Range range, const QString &formatString, const QString &templ, Qt::Alignment alignment=Qt::AlignCenter)
 Creates a DateTimeScaleFormatter using range and format. More...
 
 DateTimeScaleFormatter (Range range, const QString &formatString, Qt::Alignment alignment=Qt::AlignCenter)
 
virtual ~DateTimeScaleFormatter ()
 
Qt::Alignment alignment () const
 
virtual QDateTime currentRangeBegin (const QDateTime &datetime) const
 
QString format () const
 
QString format (const QDateTime &datetime) const
 
virtual QDateTime nextRangeBegin (const QDateTime &datetime) const
 
DateTimeScaleFormatteroperator= (const DateTimeScaleFormatter &other)
 
Range range () const
 
virtual QString text (const QDateTime &datetime) const
 

Detailed Description

This class formats dates and times used in DateTimeGrid follawing a given format.

The format follows the format of QDateTime::toString(), with one addition: "w" is replaced with the week number of the date as number without a leading zero (1-53) "ww" is replaced with the week number of the date as number with a leading zero (01-53)

For example:

// formatter to print the complete date over the current week
// This leads to the first day of the week being printed
DateTimeScaleFormatter(Range range, const QString &formatString, Qt::Alignment alignment=Qt::AlignCenter)

Optionally, you can set an user defined text alignment flag. The default value is Qt::AlignCenter.

See also
DateTimeScaleFormatter::DateTimeScaleFormatter

This class even controls the range of the grid sections.

See also
KDGanttDateTimeScaleFormatter::Range

Definition at line 115 of file kdganttdatetimegrid.h.

Member Enumeration Documentation

◆ Range

Enumerator
Second 
Minute 
Hour 
Day 
Week 
Month 
Year 

Definition at line 119 of file kdganttdatetimegrid.h.

Constructor & Destructor Documentation

◆ DateTimeScaleFormatter() [1/3]

DateTimeScaleFormatter::DateTimeScaleFormatter ( Range  range,
const QString &  formatString,
Qt::Alignment  alignment = Qt::AlignCenter 
)

Definition at line 123 of file kdganttdatetimegrid.cpp.

◆ DateTimeScaleFormatter() [2/3]

DateTimeScaleFormatter::DateTimeScaleFormatter ( Range  range,
const QString &  format,
const QString &  templ,
Qt::Alignment  alignment = Qt::AlignCenter 
)

Creates a DateTimeScaleFormatter using range and format.

The text on the header is aligned following alignment.

Definition at line 117 of file kdganttdatetimegrid.cpp.

◆ DateTimeScaleFormatter() [3/3]

DateTimeScaleFormatter::DateTimeScaleFormatter ( const DateTimeScaleFormatter other)

Definition at line 128 of file kdganttdatetimegrid.cpp.

◆ ~DateTimeScaleFormatter()

DateTimeScaleFormatter::~DateTimeScaleFormatter ( )
virtual

Definition at line 133 of file kdganttdatetimegrid.cpp.

Member Function Documentation

◆ alignment()

Qt::Alignment DateTimeScaleFormatter::alignment ( ) const

Definition at line 182 of file kdganttdatetimegrid.cpp.

References d.

Referenced by operator=(), and KDGantt::DateTimeGrid::paintUserDefinedHeader().

◆ currentRangeBegin()

QDateTime DateTimeScaleFormatter::currentRangeBegin ( const QDateTime &  datetime) const
virtual
Returns
the QDateTime being the begin of the range containing datetime
See also
nextRangeBegin

Definition at line 244 of file kdganttdatetimegrid.cpp.

References d, Day, Hour, Minute, Month, Second, Week, and Year.

Referenced by KDGantt::DateTimeGrid::paintUserDefinedHeader().

◆ format() [1/2]

QString DateTimeScaleFormatter::format ( ) const
Returns
The format being used for formatting dates and times.

Definition at line 150 of file kdganttdatetimegrid.cpp.

References d.

Referenced by operator=(), and text().

◆ format() [2/2]

QString DateTimeScaleFormatter::format ( const QDateTime &  datetime) const
Returns
The datetime as string respecting the format.

Definition at line 157 of file kdganttdatetimegrid.cpp.

References d.

◆ nextRangeBegin()

QDateTime DateTimeScaleFormatter::nextRangeBegin ( const QDateTime &  datetime) const
virtual
Returns
the QDateTime being the begin of the range after the one containing datetime
See also
currentRangeBegin

Definition at line 190 of file kdganttdatetimegrid.cpp.

References d, Day, Hour, Minute, Month, Second, Week, and Year.

Referenced by KDGantt::DateTimeGrid::paintUserDefinedHeader().

◆ operator=()

DateTimeScaleFormatter & DateTimeScaleFormatter::operator= ( const DateTimeScaleFormatter other)

Definition at line 138 of file kdganttdatetimegrid.cpp.

References alignment(), format(), and range().

◆ range()

DateTimeScaleFormatter::Range DateTimeScaleFormatter::range ( ) const
Returns
The range of each item on a DateTimeGrid header.
See also
DateTimeScaleFormatter::Range

Definition at line 177 of file kdganttdatetimegrid.cpp.

References d.

Referenced by operator=().

◆ text()

QString DateTimeScaleFormatter::text ( const QDateTime &  datetime) const
virtual

The documentation for this class was generated from the following files:

© 2001 Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
https://www.kdab.com/development-resources/qt-tools/kd-chart/
Generated by doxygen 1.9.1