📄 timestring.h
字号:
/************************************************************************ Copyright (C) 2000-2002 Trolltech AS. All rights reserved.**** This file is part of the Qtopia Environment.**** This file may be distributed and/or modified under the terms of the** GNU General Public License version 2 as published by the Free Software** Foundation and appearing in the file LICENSE.GPL included in the** packaging of this file.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.**** See http://www.trolltech.com/gpl/ for GPL licensing information.**** Contact info@trolltech.com if any conditions of this licensing are** not clear to you.************************************************************************/#ifndef _TIMESTRING_H_#define _TIMESTRING_H_#include <qdatetime.h>#include <qstring.h>#include <qarray.h>#if (QT_VERSION-0 >= 0x030000)#define DateFormat QPEDateFormat#endif#include <qtopia/qpeglobal.h>class QObject;// return a string with the time based on whether or not you want// you want it in 12 hour form. if ampm is true, then return// it in 12 hour (am/pm) form otherwise return it in 24 hour form// in theory Qt 3,0 handles this better (hopefully obsoleteing this)class QTOPIA_EXPORT DateFormat {public: // date format type 1,2,4 = day,month,year enum Order { DayMonthYear = 0421, // right-to-left MonthDayYear = 0412, YearMonthDay = 0124 }; DateFormat(QChar s = '/', Order so = MonthDayYear) : _shortOrder(so), _longOrder(so), _shortSeparator(s) { } DateFormat(QChar s, Order so, Order lo) : _shortOrder(so), _longOrder(lo), _shortSeparator(s) { } DateFormat(const DateFormat &o) : _shortOrder(o._shortOrder), _longOrder(o._longOrder), _shortSeparator(o._shortSeparator) { } bool operator==(const DateFormat &o) { if (o._shortOrder == _shortOrder && o._longOrder == _longOrder && o._shortSeparator == _shortSeparator) return TRUE; return FALSE; } // verbosity specifiers enum Verbosity { shortNumber = 0x01, // default longNumber = 0x02, padNumber = 0x04, shortWord = 0x08, // default longWord = 0x10, showWeekDay = 0x20 }; QString toNumberString() const; // the M/D/Y string. QString toWordString() const; // the Month day, year string. QString numberDate(const QDate &d, int v = 0) const; QString wordDate(const QDate &d, int v = 0) const;#ifndef QT_NO_DATASTREAM void load(QDataStream&); void save(QDataStream&) const;#endif QChar separator() const { return _shortSeparator; }; Order shortOrder() const { return _shortOrder; }; Order longOrder() const { return _longOrder; };private: Order _shortOrder; Order _longOrder; QChar _shortSeparator;};#ifndef QT_NO_DATASTREAMQDataStream &operator<<(QDataStream &s, const DateFormat&df);QDataStream &operator>>(QDataStream &s, DateFormat&df);#endifclass QTOPIA_EXPORT TimeString{public: //enum DateFormat { MonthDayYear, DayMonthYear, ISO8601, //YearMonthDay = ISO8601 };private: static QString shortDate( const QDate &d ) { return shortDate( d, currentDateFormat() ); } static QString dateString( const QDate &d ) { return dateString( d, currentDateFormat() ); } static QString longDateString( const QDate &d ) { return longDateString( d, currentDateFormat() ); } static QString dateString( const QDateTime &dt, bool ampm, bool seconds ) { return dateString( dt, ampm, seconds, currentDateFormat() ); }public: enum Length { Short, Medium, Long }; static QString localH( int hour ); static QString localHM( const QTime & ); static QString localHMS( const QTime & ); static QString localHMDayOfWeek( const QDateTime &t ); static QString localHMSDayOfWeek( const QDateTime &t ); static QString localMD( const QDate &, Length=Medium ); static QString localYMD( const QDate &, Length=Medium ); static QString localYMDHMS( const QDateTime &, Length=Medium ); static QString localDayOfWeek( const QDate&, Length=Medium ); static QString localDayOfWeek( int day1to7, Length=Medium ); static QString hourString( int hour, bool ampm ); static bool currentAMPM(); static DateFormat currentDateFormat(); static QArray<DateFormat> formatOptions(); // qtopia 1.6.0 static void connectChange(QObject*,const char* member); static void disconnectChange(QObject*,const char* member); // Not recommended to call these (they don't honor system ampm) static QString dateString( const QDateTime &t, bool ampm ); static QString timeString( const QTime &t, bool ampm, bool seconds ); static QString timeString( const QTime &t, bool ampm ); static QString shortTime( bool ampm, bool seconds ); static QString shortTime( bool ampm ); static QString numberDateString( const QDate &d, DateFormat ); static QString numberDateString( const QDate &d ) { return numberDateString( d, currentDateFormat() ); } static QString longNumberDateString( const QDate &d, DateFormat ); static QString longNumberDateString( const QDate &d ) { return longNumberDateString( d, currentDateFormat() ); } static QString shortDate( const QDate &, DateFormat ); static QString dateString( const QDate &, DateFormat ); static QString longDateString( const QDate &, DateFormat );private: static QString dateString( const QDateTime &t, bool ampm, bool seconds, DateFormat ); };#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -