-rw-r--r-- | core/applets/clockapplet/clock.cpp | 12 | ||||
-rw-r--r-- | core/applets/clockapplet/clock.h | 1 | ||||
-rw-r--r-- | core/applets/clockapplet/clockapplet.pro | 4 | ||||
-rw-r--r-- | core/applets/clockapplet/clockappletimpl.cpp | 67 | ||||
-rw-r--r-- | core/applets/clockapplet/clockappletimpl.h | 45 |
5 files changed, 15 insertions, 114 deletions
diff --git a/core/applets/clockapplet/clock.cpp b/core/applets/clockapplet/clock.cpp index aadd9b6..9fead03 100644 --- a/core/applets/clockapplet/clock.cpp +++ b/core/applets/clockapplet/clock.cpp @@ -1,109 +1,121 @@ /********************************************************************** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of 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. ** **********************************************************************/ #include "clock.h" +#include <opie2/otaskbarapplet.h> #include <qpe/qpeapplication.h> #include <qpe/qcopenvelope_qws.h> #include <qpe/config.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", , QFont::Normal ) ); connect( qApp, SIGNAL( timeChanged() ), this, SLOT( updateTime( ) ) ); connect( qApp, SIGNAL( clockChanged( bool ) ), this, SLOT( slotClockChanged( bool ) ) ); readConfig(); timerId = 0; timerEvent( 0 ); show(); } +int LauncherClock::position() +{ + return 10; +} + 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 * ) { QCString setTimeApp; setTimeApp="systemtime"; QCopEnvelope e("QPE/Application/"+setTimeApp, "raise()"); } 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:%02d %s", hour, tm.minute(), (tm.hour() >= 12) ? "PM" : "AM" ); } else 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 if (format==2) { QDate dm = QDate::currentDate(); QString d; d.sprintf("%d/%d ", dm.month(), dm.day()); setText( d+s ); } else { setText( s ); } } void LauncherClock::slotClockChanged( bool pm ) { readConfig(); updateTime(); } + +Q_EXPORT_INTERFACE() +{ + Q_CREATE_INSTANCE( OTaskbarAppletWrapper<LauncherClock> ); +} + diff --git a/core/applets/clockapplet/clock.h b/core/applets/clockapplet/clock.h index caa0c5f..996fb56 100644 --- a/core/applets/clockapplet/clock.h +++ b/core/applets/clockapplet/clock.h @@ -1,48 +1,49 @@ /********************************************************************** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of 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 __LAUNCHER_CLOCK_H__ #define __LAUNCHER_CLOCK_H__ #include <qlabel.h> #include <qdatetime.h> class LauncherClock : public QLabel { Q_OBJECT public: LauncherClock( QWidget *parent ); + static int position(); 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__ diff --git a/core/applets/clockapplet/clockapplet.pro b/core/applets/clockapplet/clockapplet.pro index 057e332..8ce3f6f 100644 --- a/core/applets/clockapplet/clockapplet.pro +++ b/core/applets/clockapplet/clockapplet.pro @@ -1,13 +1,13 @@ TEMPLATE = lib CONFIG += qt plugin warn_on release -HEADERS = clock.h clockappletimpl.h -SOURCES = clock.cpp clockappletimpl.cpp +HEADERS = clock.h +SOURCES = clock.cpp TARGET = clockapplet DESTDIR = $(OPIEDIR)/plugins/applets INCLUDEPATH += $(OPIEDIR)/include DEPENDPATH += ../$(OPIEDIR)/include .. LIBS += -lqpe VERSION = 1.0.0 include ( $(OPIEDIR)/include.pro ) target.path = $$prefix/plugins/applets diff --git a/core/applets/clockapplet/clockappletimpl.cpp b/core/applets/clockapplet/clockappletimpl.cpp deleted file mode 100644 index 7481f19..0000000 --- a/core/applets/clockapplet/clockappletimpl.cpp +++ b/dev/null @@ -1,67 +0,0 @@ -/********************************************************************** -** Copyright (C) 2000 Trolltech AS. All rights reserved. -** -** This file is part of 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. -** -**********************************************************************/ -#include "clock.h" -#include "clockappletimpl.h" - - -ClockAppletImpl::ClockAppletImpl() - : clock(0) -{ -} - -ClockAppletImpl::~ClockAppletImpl() -{ - delete clock; -} - -QWidget *ClockAppletImpl::applet( QWidget *parent ) -{ - if ( !clock ) - clock = new LauncherClock( parent ); - return clock; -} - -int ClockAppletImpl::position() const -{ - return 10; -} - -#ifndef QT_NO_COMPONENT -QRESULT ClockAppletImpl::queryInterface( const QUuid &uuid, QUnknownInterface **iface ) -{ - *iface = 0; - if ( uuid == IID_QUnknown ) - *iface = this; - else if ( uuid == IID_TaskbarApplet ) - *iface = this; - else - return QS_FALSE; - - if ( *iface ) - (*iface)->addRef(); - return QS_OK; -} - -Q_EXPORT_INTERFACE() -{ - Q_CREATE_INSTANCE( ClockAppletImpl ) -} -#endif - diff --git a/core/applets/clockapplet/clockappletimpl.h b/core/applets/clockapplet/clockappletimpl.h deleted file mode 100644 index 1f9c8f0..0000000 --- a/core/applets/clockapplet/clockappletimpl.h +++ b/dev/null @@ -1,45 +0,0 @@ -/********************************************************************** -** Copyright (C) 2000 Trolltech AS. All rights reserved. -** -** This file is part of 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 CLOCKAPPLETIMPL_H -#define CLOCKAPPLETIMPL_H - -#include <qpe/taskbarappletinterface.h> - -class LauncherClock; - -class ClockAppletImpl : public TaskbarAppletInterface -{ -public: - ClockAppletImpl(); - virtual ~ClockAppletImpl(); - -#ifndef QT_NO_COMPONENT - QRESULT queryInterface( const QUuid&, QUnknownInterface** ); - Q_REFCOUNT -#endif - - virtual QWidget *applet( QWidget *parent ); - virtual int position() const; - -private: - LauncherClock *clock; -}; - -#endif |