-rw-r--r-- | microkde/kdecore/klocale.cpp | 39 | ||||
-rw-r--r-- | microkde/kdecore/klocale.h | 14 |
2 files changed, 29 insertions, 24 deletions
diff --git a/microkde/kdecore/klocale.cpp b/microkde/kdecore/klocale.cpp index d77e251..9d7e60b 100644 --- a/microkde/kdecore/klocale.cpp +++ b/microkde/kdecore/klocale.cpp @@ -87,5 +87,5 @@ KLocale::KLocale() : mCalendarSystem( 0 ) mWeekStartsMonday = true; mHourF24Format = true; - mIntDateFormat = 0; + mIntDateFormat = Default; mLanguage = 0; mDateFormat = "%a %Y %b %d"; @@ -140,10 +140,10 @@ void KLocale::setWeekStartMonday( bool b ) mWeekStartsMonday = b; } -int KLocale::getIntDateFormat( ) +KLocale::IntDateFormat KLocale::getIntDateFormat( ) { - return mIntDateFormat ; + return mIntDateFormat; } -void KLocale::setIntDateFormat( int i ) +void KLocale::setIntDateFormat( KLocale::IntDateFormat i ) { mIntDateFormat = i; @@ -242,7 +242,7 @@ QString KLocale::formatTime(const QTime &pTime, bool includeSecs) const } -QString KLocale::formatDate(const QDate &pDate, bool shortFormat) const +QString KLocale::formatDate(const QDate &pDate, bool shortFormat, IntDateFormat intIntDateFormat) const { - const QString rst = shortFormat?dateFormatShort():dateFormat(); + const QString rst = shortFormat?dateFormatShort(intIntDateFormat):dateFormat(intIntDateFormat); // I'm rather safe than sorry @@ -645,20 +645,22 @@ QString KLocale::country() const } -QString KLocale::dateFormat() const -{ +QString KLocale::dateFormat(IntDateFormat intIntDateFormat) const +{ + const IntDateFormat dformat = (intIntDateFormat == Undefined)?mIntDateFormat:intIntDateFormat; + if ( QApplication::desktop()->width() < 480 ) { - if ( mIntDateFormat == 0 ) + if ( dformat == Default ) return "%a %d %b %Y"; - else if ( mIntDateFormat == 1 ) + else if ( dformat == Format1 ) return "%a %b %d %Y"; - else if ( mIntDateFormat == 2 ) + else if ( dformat == ISODate ) return "%a %Y %b %d"; } else { - if ( mIntDateFormat == 0 ) + if ( dformat == Default ) return "%A %d %B %Y"; - else if ( mIntDateFormat == 1 ) + else if ( dformat == Format1 ) return "%A %B %d %Y"; - else if ( mIntDateFormat == 2 ) + else if ( dformat == ISODate ) return "%A %Y %B %d"; } @@ -666,12 +668,13 @@ QString KLocale::dateFormat() const } -QString KLocale::dateFormatShort() const +QString KLocale::dateFormatShort(IntDateFormat intIntDateFormat) const { + const IntDateFormat dformat = (intIntDateFormat == Undefined)?mIntDateFormat:intIntDateFormat; - if ( mIntDateFormat == 0 ) + if ( dformat == Default ) return "%d.%m.%Y"; - else if ( mIntDateFormat == 1 ) + else if ( dformat == Format1 ) return "%m.%d.%Y"; - else if ( mIntDateFormat == 2 ) + else if ( dformat == ISODate ) // = Qt::ISODate return "%Y-%m-%d"; return mDateFormatShort ; diff --git a/microkde/kdecore/klocale.h b/microkde/kdecore/klocale.h index 7470cd2..f6c0253 100644 --- a/microkde/kdecore/klocale.h +++ b/microkde/kdecore/klocale.h @@ -42,5 +42,7 @@ class KLocale QString translate( const char *index, const char *fallback) const; - QString formatDate(const QDate &pDate, bool shortFormat = false) const; + enum IntDateFormat { Undefined=-1, Default=0, Format1=1, ISODate=2, Userdefined=3 }; + + QString formatDate(const QDate &pDate, bool shortFormat = false, IntDateFormat intIntDateFormat = Undefined) const; QString formatTime(const QTime &pTime, bool includeSecs = false) const; QString formatDateTime(const QDateTime &pDateTime) const; @@ -62,6 +64,6 @@ class KLocale QString country() const; - QString dateFormat() const; - QString dateFormatShort() const; + QString dateFormat(IntDateFormat intIntDateFormat = Undefined) const; + QString dateFormatShort(IntDateFormat intIntDateFormat = Undefined) const; QString timeFormat() const; @@ -71,6 +73,6 @@ class KLocale void setHore24Format ( bool ); void setWeekStartMonday( bool ); - void setIntDateFormat( int ); - int getIntDateFormat( ); + void setIntDateFormat( IntDateFormat ); + IntDateFormat getIntDateFormat( ); void setLanguage( int ); void setDateFormat( QString ); @@ -96,5 +98,5 @@ class KLocale bool mWeekStartsMonday; bool mHourF24Format; - int mIntDateFormat; + IntDateFormat mIntDateFormat; int mLanguage; QString mDateFormat; |