-rw-r--r-- | core/applets/clockapplet/clock.cpp | 29 | ||||
-rw-r--r-- | core/applets/clockapplet/clock.h | 2 |
2 files changed, 24 insertions, 7 deletions
diff --git a/core/applets/clockapplet/clock.cpp b/core/applets/clockapplet/clock.cpp index 178dcbe..fa76eb0 100644 --- a/core/applets/clockapplet/clock.cpp +++ b/core/applets/clockapplet/clock.cpp @@ -13,85 +13,100 @@ ** ** 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. ** **********************************************************************/ #include "clock.h" #include <qpe/global.h> #include <qpe/qpeapplication.h> #include <qpe/config.h> #include <qmainwindow.h> #include <qlayout.h> #include <qpushbutton.h> #include <qmessagebox.h> #include <qdatetime.h> #include <qtimer.h> #include <qpopupmenu.h> #include <stdlib.h> LauncherClock::LauncherClock( QWidget *parent ) : QLabel( parent ) { // If you want a sunken border around the clock do this: // setFrameStyle( QFrame::Panel | QFrame::Sunken ); setFont( QFont( "Helvetica", 10, QFont::Normal ) ); connect( qApp, SIGNAL( timeChanged() ), this, SLOT( updateTime( ) ) ); connect( qApp, SIGNAL( clockChanged( bool ) ), this, SLOT( slotClockChanged( bool ) ) ); - Config config( "qpe" ); - config.setGroup( "Time" ); - ampmFormat = config.readBoolEntry( "AMPM", TRUE ); + readConfig(); timerId = 0; timerEvent( 0 ); show(); } +void LauncherClock::readConfig() { + Config config( "qpe" ); + config.setGroup( "Time" ); + ampmFormat = config.readBoolEntry( "AMPM", TRUE ); + config.setGroup( "Date" ); + format = config.readNumEntry("ClockApplet",0); +} + void LauncherClock::mouseReleaseEvent( QMouseEvent * ) { Global::execute( "systemtime" ); } void LauncherClock::timerEvent( QTimerEvent *e ) { if ( !e || e->timerId() == timerId ) { killTimer( timerId ); changeTime(); QTime t = QTime::currentTime(); int ms = (60 - t.second())*1000 - t.msec(); timerId = startTimer( ms ); } else { QLabel::timerEvent( e ); } } void LauncherClock::updateTime( void ) { changeTime(); } void LauncherClock::changeTime( void ) { QTime tm = QDateTime::currentDateTime().time(); QString s; if( ampmFormat ) { int hour = tm.hour(); if (hour == 0) hour = 12; if (hour > 12) hour -= 12; - s.sprintf( "%2d%c%02d %s", hour, ':', tm.minute(), (tm.hour() >= 12) ? "PM" : "AM" ); + s.sprintf( "%2d:%02d %s", hour, tm.minute(), + (tm.hour() >= 12) ? "PM" : "AM" ); } else - s.sprintf( "%2d%c%02d", tm.hour(), ':', tm.minute() ); - setText( s ); + s.sprintf( "%2d:%02d", tm.hour(), tm.minute() ); + + if (format==1) { + QDate dm = QDate::currentDate(); + QString d; + d.sprintf("%d/%d ", dm.day(), dm.month()); + setText( d+s ); + } else { + setText( s ); + } } void LauncherClock::slotClockChanged( bool pm ) { - ampmFormat = pm; + readConfig(); updateTime(); } diff --git a/core/applets/clockapplet/clock.h b/core/applets/clockapplet/clock.h index 9670d90..caa0c5f 100644 --- a/core/applets/clockapplet/clock.h +++ b/core/applets/clockapplet/clock.h @@ -9,38 +9,40 @@ ** 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 __LAUNCHER_CLOCK_H__ #define __LAUNCHER_CLOCK_H__ #include <qlabel.h> #include <qdatetime.h> class LauncherClock : public QLabel { Q_OBJECT public: LauncherClock( QWidget *parent ); protected slots: void updateTime( void ); void slotClockChanged( bool pm ); protected: void mouseReleaseEvent( QMouseEvent * ); void timerEvent( QTimerEvent * ); void changeTime( void ); + void readConfig(); bool ampmFormat; int timerId; + int format; }; #endif // __LAUNCHER_CLOCK_H__ |