00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** 00002 * Qwt Widget Library 00003 * Copyright (C) 1997 Josef Wilgen 00004 * Copyright (C) 2002 Uwe Rathmann 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the Qwt License, Version 1.0 00008 *****************************************************************************/ 00009 00010 #ifndef _QWT_DATE_SCALE_DRAW_H_ 00011 #define _QWT_DATE_SCALE_DRAW_H_ 1 00012 00013 #include "qwt_global.h" 00014 #include "qwt_scale_draw.h" 00015 #include "qwt_date.h" 00016 00052 class QWT_EXPORT QwtDateScaleDraw: public QwtScaleDraw 00053 { 00054 public: 00055 explicit QwtDateScaleDraw( Qt::TimeSpec = Qt::LocalTime ); 00056 virtual ~QwtDateScaleDraw(); 00057 00058 void setDateFormat( QwtDate::IntervalType, const QString & ); 00059 QString dateFormat( QwtDate::IntervalType ) const; 00060 00061 void setTimeSpec( Qt::TimeSpec ); 00062 Qt::TimeSpec timeSpec() const; 00063 00064 void setUtcOffset( int seconds ); 00065 int utcOffset() const; 00066 00067 void setWeek0Type( QwtDate::Week0Type ); 00068 QwtDate::Week0Type week0Type() const; 00069 00070 virtual QwtText label( double ) const; 00071 00072 QDateTime toDateTime( double ) const; 00073 00074 protected: 00075 virtual QwtDate::IntervalType 00076 intervalType( const QwtScaleDiv & ) const; 00077 00078 virtual QString dateFormatOfDate( const QDateTime &, 00079 QwtDate::IntervalType ) const; 00080 00081 private: 00082 class PrivateData; 00083 PrivateData *d_data; 00084 }; 00085 00086 #endif