24 files changed, 348 insertions, 147 deletions
@@ -89,48 +89,50 @@ $(QTDIR)/stamp-headers-x11 : cd $(QTDIR)/include; $(patsubst %,ln -sf $(OPIEDIR)/x11/libqpe-x11/qt/%;,qgfx_qws.h qwsmouse_qws.h qcopchannel_qws.h qwindowsystem_qws.h qfontmanager_qws.h qwsdefaultdecoration_qws.h) touch $@ $(OPIEDIR)/stamp-headers : @-rm -f $(OPIEDIR)/stamp-headers* mkdir -p $(TOPDIR)/include/qpe \ $(TOPDIR)/include/qtopia \ $(TOPDIR)/include/opie \ $(TOPDIR)/include/opie2 \ $(TOPDIR)/include/qtopia/private ( cd include/qpe && rm -f *.h; ln -sf ../../library/*.h .; ln -sf ../../library/backend/*.h .; rm -f *_p.h; ) ( cd include/qtopia && rm -f *.h; ln -sf ../../library/*.h .; ) ( cd include/qtopia/private && rm -f *.h; ln -sf ../../../library/backend/*.h .; ) # libopie1 ( cd include/opie && rm -f *.h; ln -sf ../../libopie/*.h .; rm -f *_p.h; ) ( cd include/opie && ln -sf ../../libopie/pim/*.h .; ) ( cd include/opie && ln -sf ../../libopie/big-screen/*.h .; ) # libopie2 ( cd include/opie2 && ln -sf ../../libopie2/opiecore/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opiecore/device/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opiemm/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opiedb/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opienet/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opiepim/*.h .; ) + ( cd include/opie2 && ln -sf ../../libopie2/opiepim/core/*.h .; ) + ( cd include/opie2 && ln -sf ../../libopie2/opiepim/core/backends/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opieui/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opieui/fileselector/*.h .; ) ( cd include/opie2 && ln -sf ../../libopie2/opieui/big-screen/*.h .; ) ( cd include/opie2 && ln -sf ../../libqtaux/*.h .; ) # all ( cd include/opie; for generatedHeader in `cd ../../libopie; ls *.ui | sed -e "s,\.ui,\.h,g"`; do \ ln -sf ../../libopie/$$generatedHeader $$generatedHeader; done ) ln -sf ../../library/custom.h $(TOPDIR)/include/qpe/custom.h touch $@ $(OPIEDIR)/stamp-headers-x11 : @-rm -f $(OPIEDIR)/stamp-headers* mkdir -p $(TOPDIR)/include/qpe $(TOPDIR)/include/qtopia \ $(TOPDIR)/include/opie $(TOPDIR)/include/qtopia/private ( cd include/qpe && rm -f *.h; ln -sf ../../library/*.h .; ln -sf ../../library/backend/*.h .; rm -f *_p.h; ) ( cd include/qtopia && rm -f *.h; ln -sf ../../library/*.h .; ) ( cd include/qtopia/private && rm -f *.h; ln -sf ../../../library/backend/*.h .; ) ( cd include/opie && rm -f *.h; ln -sf ../../libopie/*.h .; rm -f *_p.h; ) ( cd include/opie && ln -sf ../../libsql/*.h .; ) ( cd include/opie && ln -sf ../../libopie/pim/*.h .; ) ( cd include/opie; for generatedHeader in `cd ../../libopie; ls *.ui | sed -e "s,\.ui,\.h,g"`; do \ ln -sf ../../libopie/$$generatedHeader $$generatedHeader; done ) ln -sf ../../library/custom.h $(TOPDIR)/include/qpe/custom.h ( cd include/qpe; ln -sf ../../x11/libqpe-x11/qpe/*.h .; ) diff --git a/libopie2/opiepim/core/oconversion.cpp b/libopie2/opiepim/core/oconversion.cpp index b7eebef..160c2c6 100644 --- a/libopie2/opiepim/core/oconversion.cpp +++ b/libopie2/opiepim/core/oconversion.cpp @@ -1,132 +1,143 @@ /*
This file is part of the Opie Project
- Copyright (C) The Main Author <main-author@whereever.org>
=. Copyright (C) The Opie Team <opie-devel@handhelds.org>
.=l.
.>+-=
_;:, .> :=|. This program is free software; you can
.> <`_, > . <= redistribute it and/or modify it under
:`=1 )Y*s>-.-- : the terms of the GNU Library General Public
.="- .-=="i, .._ License as published by the Free Software
- . .-<_> .<> Foundation; either version 2 of the License,
._= =} : or (at your option) any later version.
.%`+i> _;_.
.i_,=:_. -<s. This program is distributed in the hope that
+ . -:. = it will be useful, but WITHOUT ANY WARRANTY;
: .. .:, . . . without even the implied warranty of
=_ + =;=|` MERCHANTABILITY or FITNESS FOR A
_.=:. : :=>`: PARTICULAR PURPOSE. See the GNU
..}^=.= = ; Library General Public License for more
++= -. .` .: details.
: = ...= . :.=-
-. .:....=;==+<; You should have received a copy of the GNU
-_. . . )=. = Library General Public License along with
-- :-=` this library; see the file COPYING.LIB.
If not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
*/
+/* OPIE */
#include <opie2/oconversion.h>
#include <qpe/timeconversion.h>
-
-namespace Opie {
+namespace Opie
+{
QString OConversion::dateToString( const QDate &d )
{
if ( d.isNull() || !d.isValid() )
return QString::null;
// ISO format in year, month, day (YYYYMMDD); e.g. 20021231
QString year = QString::number( d.year() );
QString month = QString::number( d.month() );
month = month.rightJustify( 2, '0' );
QString day = QString::number( d.day() );
day = day.rightJustify( 2, '0' );
QString str = year + month + day;
//qDebug( "\tPimContact dateToStr = %s", str.latin1() );
return str;
}
+
QDate OConversion::dateFromString( const QString& s )
{
QDate date;
if ( s.isEmpty() )
return date;
// Be backward compatible to old Opie format:
// Try to load old format. If it fails, try new ISO-Format!
date = TimeConversion::fromString ( s );
if ( date.isValid() )
return date;
// Read ISO-Format (YYYYMMDD)
int year = s.mid(0, 4).toInt();
int month = s.mid(4,2).toInt();
int day = s.mid(6,2).toInt();
// do some quick sanity checking -eilers
// but we isValid() again? -zecke
- if ( year < 1900 || year > 3000 ) {
+ if ( year < 1900 || year > 3000 )
+ {
qWarning( "PimContact year is not in range");
return date;
}
- if ( month < 0 || month > 12 ) {
+ if ( month < 0 || month > 12 )
+ {
qWarning( "PimContact month is not in range");
return date;
}
- if ( day < 0 || day > 31 ) {
+ if ( day < 0 || day > 31 )
+ {
qWarning( "PimContact day is not in range");
return date;
}
date.setYMD( year, month, day );
- if ( !date.isValid() ) {
+ if ( !date.isValid() )
+ {
qWarning( "PimContact date is not valid");
return date;
}
return date;
}
-QString OConversion::dateTimeToString( const QDateTime& dt ) {
- if (!dt.isValid() || dt.isNull() ) return QString::null;
+
+
+QString OConversion::dateTimeToString( const QDateTime& dt )
+{
+ if ( !dt.isValid() || dt.isNull() )
+ return QString::null;
QString year = QString::number( dt.date().year() );
QString month = QString::number( dt.date().month() );
QString day = QString::number( dt.date().day() );
QString hour = QString::number( dt.time().hour() );
QString min = QString::number( dt.time().minute() );
QString sec = QString::number( dt.time().second() );
month = month.rightJustify( 2, '0' );
day = day. rightJustify( 2, '0' );
hour = hour. rightJustify( 2, '0' );
min = min. rightJustify( 2, '0' );
sec = sec. rightJustify( 2, '0' );
- QString str = day + month + year + hour + min + sec;
-
- return str;
+ return day + month + year + hour + min + sec;
}
-QDateTime OConversion::dateTimeFromString( const QString& str) {
- if ( str.isEmpty() ) return QDateTime();
+
+QDateTime OConversion::dateTimeFromString( const QString& str )
+{
+
+ if ( str.isEmpty() )
+ return QDateTime();
int day = str.mid(0, 2).toInt();
int month = str.mid(2, 2).toInt();
int year = str.mid(4, 4).toInt();
int hour = str.mid(8, 2).toInt();
int min = str.mid(10, 2).toInt();
int sec = str.mid(12, 2).toInt();
QDate date( year, month, day );
QTime time( hour, min, sec );
QDateTime dt( date, time );
return dt;
}
}
\ No newline at end of file diff --git a/libopie2/opiepim/core/oconversion.h b/libopie2/opiepim/core/oconversion.h index 3c4fdf3..eeb97e5 100644 --- a/libopie2/opiepim/core/oconversion.h +++ b/libopie2/opiepim/core/oconversion.h @@ -6,53 +6,52 @@ .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef __oconversion_h__ -#define __oconversion_h__ +#ifndef OCONVERSION_H +#define OCONVERSION_H -/* #include <time.h> */ -/* #include <sys/types.h> */ +/* QT */ #include <qdatetime.h> namespace Opie { class OConversion { public: static QString dateToString( const QDate &d ); static QDate dateFromString( const QString &datestr ); /** * simple function to store DateTime as string and read from string * no timezone changing is done * DDMMYYYYHHMMSS is the simple format */ static QString dateTimeToString( const QDateTime& ); static QDateTime dateTimeFromString( const QString& ); private: class Private; Private* d; }; diff --git a/libopie2/opiepim/core/opimcache.h b/libopie2/opiepim/core/opimcache.h index e70a910..a033574 100644 --- a/libopie2/opiepim/core/opimcache.h +++ b/libopie2/opiepim/core/opimcache.h @@ -5,55 +5,57 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIE_PIM_CACHE_H -#define OPIE_PIM_CACHE_H - -#include <qintcache.h> +#ifndef OPIMCACHE_H +#define OPIMCACHE_H +/* OPIE */ #include <opie2/opimrecord.h> +/* QT */ +#include <qintcache.h> + namespace Opie { class OPimCacheItemPrivate; template <class T = OPimRecord> class OPimCacheItem { public: OPimCacheItem( const T& t = T() ); OPimCacheItem( const OPimCacheItem& ); ~OPimCacheItem(); OPimCacheItem &operator=( const OPimCacheItem& ); T record()const; void setRecord( const T& ); private: T m_t; OPimCacheItemPrivate *d; }; class OPimCachePrivate; /** * OPimCache for caching the items * We support adding, removing diff --git a/libopie2/opiepim/core/opimmaintainer.cpp b/libopie2/opiepim/core/opimmaintainer.cpp index b2eff12..b8d829a 100644 --- a/libopie2/opiepim/core/opimmaintainer.cpp +++ b/libopie2/opiepim/core/opimmaintainer.cpp @@ -6,49 +6,49 @@ .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <opie2/opimmaintainer.h> +#include "opimmaintainer.h" namespace Opie { OPimMaintainer::OPimMaintainer( int mode, int uid ) : m_mode(mode), m_uid(uid ) {} OPimMaintainer::~OPimMaintainer() { } OPimMaintainer::OPimMaintainer( const OPimMaintainer& main ) { *this = main; } OPimMaintainer &OPimMaintainer::operator=( const OPimMaintainer& main ) { m_mode = main.m_mode; m_uid = main.m_uid; return *this; } bool OPimMaintainer::operator==( const OPimMaintainer& main ) { if (m_mode != main.m_mode ) return false; if (m_uid != main.m_uid ) return false; return true; } bool OPimMaintainer::operator!=( const OPimMaintainer& main ) { return !(*this == main ); diff --git a/libopie2/opiepim/core/opimmaintainer.h b/libopie2/opiepim/core/opimmaintainer.h index 46bc9d2..e7e7eeb 100644 --- a/libopie2/opiepim/core/opimmaintainer.h +++ b/libopie2/opiepim/core/opimmaintainer.h @@ -5,51 +5,52 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIE_PIM_MAINTAINER_H -#define OPIE_PIM_MAINTAINER_H +#ifndef OPIMMAINTAINER_H +#define OPIMMAINTAINER_H +/* QT */ #include <qstring.h> namespace Opie { /** * Who maintains what? */ class OPimMaintainer { public: enum Mode { Undefined = -1, Nothing = 0, Responsible, DoneBy, Coordinating, }; OPimMaintainer( int mode = Undefined, int uid = 0); OPimMaintainer( const OPimMaintainer& ); ~OPimMaintainer(); OPimMaintainer &operator=( const OPimMaintainer& ); bool operator==( const OPimMaintainer& ); bool operator!=( const OPimMaintainer& ); int mode()const; diff --git a/libopie2/opiepim/core/opimresolver.cpp b/libopie2/opiepim/core/opimresolver.cpp index eceabcb..73d7de1 100644 --- a/libopie2/opiepim/core/opimresolver.cpp +++ b/libopie2/opiepim/core/opimresolver.cpp @@ -5,57 +5,58 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <qcopchannel_qws.h> -#include <qpe/qcopenvelope_qws.h> +#include "opimresolver.h" -#include <opie2/otodoaccess.h> +/* OPIE */ #include <opie2/ocontactaccess.h> +#include <opie2/otodoaccess.h> +#include <qpe/qcopenvelope_qws.h> -//#include "opimfactory.h" -#include <opie2/opimresolver.h> +/* QT */ +#include <qcopchannel_qws.h> namespace Opie { OPimResolver* OPimResolver::m_self = 0l; OPimResolver::OPimResolver() { /* the built in channels */ m_builtIns << "Todolist" << "Addressbook" << "Datebook"; } OPimResolver* OPimResolver::self() { if (!m_self) m_self = new OPimResolver(); return m_self; } /* * FIXME use a cache here too */ OPimRecord* OPimResolver::record( const QString& service, int uid ) { OPimRecord* rec = 0l; OPimBase* base = backend( service ); if ( base ) diff --git a/libopie2/opiepim/core/opimresolver.h b/libopie2/opiepim/core/opimresolver.h index adc7c16..dd6f07f 100644 --- a/libopie2/opiepim/core/opimresolver.h +++ b/libopie2/opiepim/core/opimresolver.h @@ -5,69 +5,72 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIE_PIM_RESOLVER -#define OPIE_PIM_RESOLVER +#ifndef OPIMRESOLVER_H +#define OPIMRESOLVER_H +/* OPIE */ +#include <opie2/otemplatebase.h> + +/* QT */ #include <qstring.h> #include <qvaluelist.h> -#include <opie2/otemplatebase.h> - namespace Opie { /** * OPimResolver is a MetaClass to access * available backends read only. * It will be used to resolve uids + app names * to full informations * to traverse through a list of alarms, reminders * to get access to built in PIM functionality * and to more stuff * THE PERFORMANCE will depend on THE BACKEND * USING XML is a waste of memory!!!!! */ class OPimResolver { + public: enum BuiltIn { TodoList = 0, DateBook, AddressBook }; static OPimResolver* self(); /** * return a record for a uid * and an service * You've THE OWNERSHIP NOW! */ OPimRecord *record( const QString& service, int uid ); /** * return the QCopChannel for service * When we will use Qtopia Services it will be used here */ QCString qcopChannel( enum BuiltIn& )const; QCString qcopChannel( const QString& service )const; /** * The Application channel (QPE/Application/name) @@ -79,43 +82,44 @@ public: * return a list of available services */ QStringList services()const; inline QString serviceName(int rrti )const; int serviceId( const QString& Service); /** * add a record to a service... ;) */ bool add( const QString& service, const OPimRecord& ); /** * record returns an empty record for a given service. * Be sure to delete it!!! * */ OPimRecord* record( const QString& service ); OPimRecord* record( int rtti ); /** * you can cast to your */ OPimBase* backend( const QString& service ); OPimBase* backend( int rtti ); + private: OPimResolver(); void loadData(); inline bool isBuiltIn( const QString& )const; OPimRecord* recordExtern( const QString&, int ); OPimRecord* recordExtern( const QString& ); static OPimResolver* m_self; struct Data; class Private; Data* data; Private* d; QStringList m_builtIns; }; } #endif diff --git a/libopie2/opiepim/core/opimstate.cpp b/libopie2/opiepim/core/opimstate.cpp index 1013a1c..8aff558 100644 --- a/libopie2/opiepim/core/opimstate.cpp +++ b/libopie2/opiepim/core/opimstate.cpp @@ -5,52 +5,53 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <qshared.h> - #include "opimstate.h" +/* QT */ +#include <qshared.h> + namespace Opie { /* * for one int this does not make * much sense but never the less * we will do it for the future */ struct OPimState::Data : public QShared { Data() : QShared(),state(Undefined) { } int state; }; OPimState::OPimState( int state ) { data = new Data; data->state = state; } OPimState::OPimState( const OPimState& st) : data( st.data ) { /* ref up */ data->ref(); } OPimState::~OPimState() { if ( data->deref() ) { delete data ; diff --git a/libopie2/opiepim/core/opimstate.h b/libopie2/opiepim/core/opimstate.h index 78e8cd0..8336b3e 100644 --- a/libopie2/opiepim/core/opimstate.h +++ b/libopie2/opiepim/core/opimstate.h @@ -5,71 +5,74 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIE_PIM_STATE_H -#define OPIE_PIM_STATE_H +#ifndef OPIMSTATE_H +#define OPIMSTATE_H +/* QT */ #include <qstring.h> namespace Opie { /** * The State of a Task * This class encapsules the state of a todo * and it's shared too */ /* * in c a simple struct would be enough ;) * g_new_state(); * g_do_some_thing( state_t* ); * ;) */ class OPimState { + public: enum State { Started = 0, Postponed, Finished, NotStarted, Undefined }; OPimState( int state = Undefined ); OPimState( const OPimState& ); ~OPimState(); bool operator==( const OPimState& ); OPimState &operator=( const OPimState& ); void setState( int state); int state()const; + private: void deref(); inline void copyInternally(); struct Data; Data* data; class Private; Private *d; }; } #endif diff --git a/libopie2/opiepim/core/opimxref.cpp b/libopie2/opiepim/core/opimxref.cpp index 85d3345..f58ebb5 100644 --- a/libopie2/opiepim/core/opimxref.cpp +++ b/libopie2/opiepim/core/opimxref.cpp @@ -5,75 +5,81 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <opie2/opimxref.h> +#include "opimxref.h" namespace Opie { OPimXRef::OPimXRef( const OPimXRefPartner& one, const OPimXRefPartner& two ) : m_partners(2) { m_partners[0] = one; m_partners[1] = two; } -OPimXRef::OPimXRef() - : m_partners(2) +OPimXRef::OPimXRef():m_partners(2) { } + OPimXRef::OPimXRef( const OPimXRef& ref) { *this = ref; } + OPimXRef::~OPimXRef() { } + OPimXRef &OPimXRef::operator=( const OPimXRef& ref) { m_partners = ref.m_partners; m_partners.detach(); return* this; } + bool OPimXRef::operator==( const OPimXRef& oper ) { if ( m_partners == oper.m_partners ) return true; return false; } OPimXRefPartner OPimXRef::partner( enum Partners par) const{ return m_partners[par]; } + void OPimXRef::setPartner( enum Partners par, const OPimXRefPartner& part) { m_partners[par] = part; } + bool OPimXRef::containsString( const QString& string ) const{ if ( m_partners[One].service() == string || m_partners[Two].service() == string ) return true; return false; } + bool OPimXRef::containsUid( int uid ) const{ if ( m_partners[One].uid() == uid || m_partners[Two].uid() == uid ) return true; return false; } } diff --git a/libopie2/opiepim/core/opimxref.h b/libopie2/opiepim/core/opimxref.h index 820c9c4..f3e814e 100644 --- a/libopie2/opiepim/core/opimxref.h +++ b/libopie2/opiepim/core/opimxref.h @@ -6,56 +6,58 @@ .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIM_XREF_H -#define OPIM_XREF_H +#ifndef OPIMXREF_H +#define OPIMXREF_H +/* OPIE */ +#include <opie2/opimxrefpartner.h> + +/* QT */ #include <qarray.h> #include <qvaluelist.h> -#include <opie2/opimxrefpartner.h> - namespace Opie { /** * this is a Cross Referecne between * two Cross Reference Partners */ class OPimXRef { public: typedef QValueList<OPimXRef> ValueList; enum Partners { One, Two }; OPimXRef( const OPimXRefPartner& ONE, const OPimXRefPartner& ); OPimXRef(); OPimXRef( const OPimXRef& ); ~OPimXRef(); OPimXRef &operator=( const OPimXRef& ); bool operator==( const OPimXRef& ); OPimXRefPartner partner( enum Partners )const; void setPartner( enum Partners, const OPimXRefPartner& ); bool containsString( const QString& service)const; bool containsUid( int uid )const; diff --git a/libopie2/opiepim/core/opimxrefmanager.cpp b/libopie2/opiepim/core/opimxrefmanager.cpp index bf6fed6..e7c6c5a 100644 --- a/libopie2/opiepim/core/opimxrefmanager.cpp +++ b/libopie2/opiepim/core/opimxrefmanager.cpp @@ -5,98 +5,110 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <opie2/opimxrefmanager.h> +#include "opimxrefmanager.h" namespace Opie { OPimXRefManager::OPimXRefManager() { } + OPimXRefManager::OPimXRefManager( const OPimXRefManager& ref) { m_list = ref.m_list; } + OPimXRefManager::~OPimXRefManager() { } + OPimXRefManager &OPimXRefManager::operator=( const OPimXRefManager& ref) { m_list = ref.m_list; return *this; } + bool OPimXRefManager::operator==( const OPimXRefManager& /*ref*/) { // if ( m_list == ref.m_list ) return true; return false; } + void OPimXRefManager::add( const OPimXRef& ref) { m_list.append( ref ); } + void OPimXRefManager::remove( const OPimXRef& ref) { m_list.remove( ref ); } + void OPimXRefManager::replace( const OPimXRef& ref) { m_list.remove( ref ); m_list.append( ref ); } + void OPimXRefManager::clear() { m_list.clear(); } + QStringList OPimXRefManager::apps()const { OPimXRef::ValueList::ConstIterator it; QStringList list; QString str; for ( it = m_list.begin(); it != m_list.end(); ++it ) { str = (*it).partner( OPimXRef::One ).service(); if ( !list.contains( str ) ) list << str; str = (*it).partner( OPimXRef::Two ).service(); if ( !list.contains( str ) ) list << str; } return list; } + OPimXRef::ValueList OPimXRefManager::list()const { return m_list; } + OPimXRef::ValueList OPimXRefManager::list( const QString& appName )const{ OPimXRef::ValueList list; OPimXRef::ValueList::ConstIterator it; for ( it = m_list.begin(); it != m_list.end(); ++it ) { if ( (*it).containsString( appName ) ) list.append( (*it) ); } return list; } + OPimXRef::ValueList OPimXRefManager::list( int uid )const { OPimXRef::ValueList list; OPimXRef::ValueList::ConstIterator it; for ( it = m_list.begin(); it != m_list.end(); ++it ) { if ( (*it).containsUid( uid ) ) list.append( (*it) ); } return list; } } diff --git a/libopie2/opiepim/core/opimxrefmanager.h b/libopie2/opiepim/core/opimxrefmanager.h index fa2d7f4..b80a645 100644 --- a/libopie2/opiepim/core/opimxrefmanager.h +++ b/libopie2/opiepim/core/opimxrefmanager.h @@ -5,55 +5,58 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIM_XREF_MANAGER_H -#define OPIM_XREF_MANAGER_H -#include <qstringlist.h> +#ifndef OPIMXREFMANAGER_H +#define OPIMXREFMANAGER_H +/* OPIE */ #include <opie2/opimxref.h> +/* QT */ +#include <qstringlist.h> + namespace Opie { /** * This is a simple manager for * OPimXRefs. * It allows addition, removing, replacing * clearing and 'querying' the XRef... */ class OPimXRefManager { public: OPimXRefManager(); OPimXRefManager( const OPimXRefManager& ); ~OPimXRefManager(); OPimXRefManager& operator=( const OPimXRefManager& ); bool operator==( const OPimXRefManager& ); void add( const OPimXRef& ); void remove( const OPimXRef& ); void replace( const OPimXRef& ); void clear(); /** * apps participating diff --git a/libopie2/opiepim/core/opimxrefpartner.cpp b/libopie2/opiepim/core/opimxrefpartner.cpp index f6ccc7f..3741bc3 100644 --- a/libopie2/opiepim/core/opimxrefpartner.cpp +++ b/libopie2/opiepim/core/opimxrefpartner.cpp @@ -5,71 +5,81 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <opie2/opimxrefpartner.h> +#include "opimxrefpartner.h" namespace Opie { OPimXRefPartner::OPimXRefPartner( const QString& appName, int uid, int field ) : m_app(appName), m_uid(uid), m_field( field ) { } + OPimXRefPartner::OPimXRefPartner( const OPimXRefPartner& ref ) { *this = ref; } + OPimXRefPartner::~OPimXRefPartner() { } + OPimXRefPartner &OPimXRefPartner::operator=( const OPimXRefPartner& par ) { m_app = par.m_app; m_uid = par.m_uid; m_field = par.m_field; return *this; } + bool OPimXRefPartner::operator==( const OPimXRefPartner& par ) { if ( m_app != par.m_app ) return false; if ( m_uid != par.m_uid ) return false; if ( m_field != par.m_field ) return false; return true; } + QString OPimXRefPartner::service()const { return m_app; } + int OPimXRefPartner::uid()const { return m_uid; } + int OPimXRefPartner::field()const { return m_field; } + void OPimXRefPartner::setService( const QString& appName ) { m_app = appName; } + void OPimXRefPartner::setUid( int uid ) { m_uid = uid; } + void OPimXRefPartner::setField( int field ) { m_field = field; } } diff --git a/libopie2/opiepim/core/opimxrefpartner.h b/libopie2/opiepim/core/opimxrefpartner.h index 6853d5b..005dbc0 100644 --- a/libopie2/opiepim/core/opimxrefpartner.h +++ b/libopie2/opiepim/core/opimxrefpartner.h @@ -8,63 +8,66 @@ .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef OPIM_XREF_PARTNER_H #define OPIM_XREF_PARTNER_H +/* QT */ #include <qstring.h> namespace Opie { /** * This class represents one partner * of a Cross Reference. * In Opie one application * can link one uid * with one tableId( fieldId ) to another. */ class OPimXRefPartner { + public: OPimXRefPartner( const QString& service = QString::null, int uid = 0, int field = -1 ); OPimXRefPartner( const OPimXRefPartner& ); OPimXRefPartner& operator=( const OPimXRefPartner& ); ~OPimXRefPartner(); bool operator==(const OPimXRefPartner& ); QString service()const; int uid()const; int field()const; void setService( const QString& service ); void setUid( int uid ); void setField( int field ); + private: QString m_app; int m_uid; int m_field; class Private; Private* d; }; } #endif diff --git a/libopie2/opiepim/core/orecur.cpp b/libopie2/opiepim/core/orecur.cpp index 033f264..5e2da25 100644 --- a/libopie2/opiepim/core/orecur.cpp +++ b/libopie2/opiepim/core/orecur.cpp @@ -6,150 +6,170 @@ .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <time.h> +#include "orecur.h" -#include <qshared.h> +/* OPIE */ +#include <opie2/otimezone.h> +#include <qpe/timeconversion.h> -#include <qtopia/timeconversion.h> +/* QT */ +#include <qshared.h> -#include <opie2/otimezone.h> -#include <opie2/orecur.h> +/* STD */ +#include <time.h> namespace Opie { + struct ORecur::Data : public QShared { Data() : QShared() { type = ORecur::NoRepeat; freq = -1; days = 0; pos = 0; create = QDateTime::currentDateTime(); hasEnd = FALSE; end = QDate::currentDate(); } char days; // Q_UINT8 for 8 seven days;) ORecur::RepeatType type; int freq; int pos; bool hasEnd : 1; QDate end; QDateTime create; int rep; QString app; ExceptionList list; QDate start; }; ORecur::ORecur() { data = new Data; } ORecur::ORecur( const QMap<int, QString>& map ) { ORecur(); fromMap( map ); } ORecur::ORecur( const ORecur& rec) : data( rec.data ) { data->ref(); } + + ORecur::~ORecur() { if ( data->deref() ) { delete data; data = 0l; } } + + void ORecur::deref() { if ( data->deref() ) { delete data; data = 0l; } } + + bool ORecur::operator==( const ORecur& )const { return false; } + + ORecur &ORecur::operator=( const ORecur& re) { if ( *this == re ) return *this; re.data->ref(); deref(); data = re.data; return *this; } + + bool ORecur::doesRecur()const { return !( type() == NoRepeat ); } + + /* * we try to be smart here * */ bool ORecur::doesRecur( const QDate& date ) { /* the day before the recurrance */ QDate da = date.addDays(-1); QDate recur; if (!nextOcurrence( da, recur ) ) return false; return (recur == date); } + + // FIXME unuglify! // GPL from Datebookdb.cpp // FIXME exception list! bool ORecur::nextOcurrence( const QDate& from, QDate& next ) { bool stillLooking; stillLooking = p_nextOccurrence( from, next ); while ( stillLooking && data->list.contains(next) ) stillLooking = p_nextOccurrence( next.addDays(1), next ); return stillLooking; } + + bool ORecur::p_nextOccurrence( const QDate& from, QDate& next ) { // easy checks, first are we too far in the future or too far in the past? QDate tmpDate; int freq = frequency(); int diff, diff2, a; int iday, imonth, iyear; int dayOfWeek = 0; int firstOfWeek = 0; int weekOfMonth; if (hasEndDate() && endDate() < from) return FALSE; if (start() >= from ) { next = start(); return TRUE; } switch ( type() ) { case Weekly: /* weekly is just daily by 7 */ /* first convert the repeatPattern.Days() mask to the next @@ -380,139 +400,185 @@ bool ORecur::p_nextOccurrence( const QDate& from, QDate& next ) { if(QDate(iyear, imonth, iday) >= from) { next = QDate(iyear, imonth, iday); if ((next > endDate()) && hasEndDate() ) return FALSE; return TRUE; } /* iyear == from.year(), need to advance again */ iyear += freq; /* under the assumption we won't hit one of the special not-leap years twice */ if(!QDate::isValid(iyear, imonth, iday)) { /* must have been skipping by leap years and hit one that wasn't, (e.g. 2100) */ iyear += freq; } next = QDate(iyear, imonth, iday); if ((next > endDate()) && hasEndDate() ) return FALSE; return TRUE; default: return FALSE; } } + + ORecur::RepeatType ORecur::type()const{ return data->type; } + + int ORecur::frequency()const { return data->freq; } + + int ORecur::position()const { return data->pos; } + + char ORecur::days() const{ return data->days; } + + bool ORecur::hasEndDate()const { return data->hasEnd; } + + QDate ORecur::endDate()const { return data->end; } + + QDate ORecur::start()const{ return data->start; } + + QDateTime ORecur::createdDateTime()const { return data->create; } + + int ORecur::repetition()const { return data->rep; } + + QString ORecur::service()const { return data->app; } + + ORecur::ExceptionList& ORecur::exceptions() { return data->list; } + + void ORecur::setType( const RepeatType& z) { checkOrModify(); data->type = z; } + + void ORecur::setFrequency( int freq ) { checkOrModify(); data->freq = freq; } + + void ORecur::setPosition( int pos ) { checkOrModify(); data->pos = pos; } + + void ORecur::setDays( char c ) { checkOrModify(); data->days = c; } + + void ORecur::setEndDate( const QDate& dt) { checkOrModify(); data->end = dt; } + + void ORecur::setCreatedDateTime( const QDateTime& t) { checkOrModify(); data->create = t; } + + void ORecur::setHasEndDate( bool b) { checkOrModify(); data->hasEnd = b; } + + void ORecur::setRepitition( int rep ) { checkOrModify(); data->rep = rep; } + + void ORecur::setService( const QString& app ) { checkOrModify(); data->app = app; } + + void ORecur::setStart( const QDate& dt ) { checkOrModify(); data->start = dt; } + + void ORecur::checkOrModify() { if ( data->count != 1 ) { data->deref(); Data* d2 = new Data; d2->days = data->days; d2->type = data->type; d2->freq = data->freq; d2->pos = data->pos; d2->hasEnd = data->hasEnd; d2->end = data->end; d2->create = data->create; d2->rep = data->rep; d2->app = data->app; d2->list = data->list; d2->start = data->start; data = d2; } } + + QString ORecur::toString()const { QString buf; QMap<int, QString> recMap = toMap(); buf += " rtype=\""; buf += recMap[ORecur::RType]; buf += "\""; if (data->days > 0 ) buf += " rweekdays=\"" + recMap[ORecur::RWeekdays] + "\""; if ( data->pos != 0 ) buf += " rposition=\"" + recMap[ORecur::RPosition] + "\""; buf += " rfreq=\"" + recMap[ORecur::RFreq] + "\""; buf += " rhasenddate=\"" + recMap[ORecur::RHasEndDate]+ "\""; if ( data->hasEnd ) buf += " enddt=\"" + recMap[ORecur::EndDate] + "\""; buf += " created=\"" + recMap[ORecur::Created] + "\""; if ( data->list.isEmpty() ) return buf; buf += " exceptions=\""; buf += recMap[ORecur::Exceptions]; buf += "\" "; diff --git a/libopie2/opiepim/core/orecur.h b/libopie2/opiepim/core/orecur.h index 60508f5..7808897 100644 --- a/libopie2/opiepim/core/orecur.h +++ b/libopie2/opiepim/core/orecur.h @@ -6,64 +6,66 @@ .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIE_RECUR_H -#define OPIE_RECUR_H - -#include <sys/types.h> +#ifndef ORECUR_H +#define ORECUR_H +/* QT */ #include <qdatetime.h> #include <qvaluelist.h> #include <qmap.h> +/* STD */ +#include <sys/types.h> namespace Opie { /** * Class to handle Recurrencies.. */ class ORecur { + public: typedef QValueList<QDate> ExceptionList; enum RepeatType{ NoRepeat = -1, Daily, Weekly, MonthlyDay, MonthlyDate, Yearly }; enum Days { MON = 0x01, TUE = 0x02, WED = 0x04, THU = 0x08, FRI = 0x10, SAT = 0x20, SUN = 0x40 }; enum Fields{ RType = 0, RWeekdays, RPosition, RFreq, RHasEndDate, EndDate, Created, Exceptions }; ORecur(); ORecur( const QMap<int, QString>& map ); ORecur( const ORecur& ); ~ORecur(); ORecur &operator=( const ORecur& ); bool operator==(const ORecur& )const; bool doesRecur()const; /* if it recurrs on that day */ bool doesRecur( const QDate& ); RepeatType type()const; int frequency()const; int position()const; char days()const; @@ -93,42 +95,43 @@ public: ExceptionList &exceptions(); /** * the current repetition */ int repetition()const; void setType( const RepeatType& ); void setFrequency( int freq ); void setPosition( int pos ); void setDays( char c); void setEndDate( const QDate& dt ); void setStart( const QDate& dt ); void setCreatedDateTime( const QDateTime& ); void setHasEndDate( bool b ); void setRepitition(int ); void setService( const QString& ser ); QMap<int, QString> toMap() const; void fromMap( const QMap<int, QString>& map ); /* almost internal */ QString toString()const; + private: bool p_nextOccurrence( const QDate& from, QDate& next ); void deref(); inline void checkOrModify(); /* Converts rType to String */ QString rTypeString() const; /* Returns a map to convert Stringname for RType to RepeatType */ QMap<QString, RepeatType> rTypeValueConvertMap() const; class Data; Data* data; class ORecurPrivate; ORecurPrivate *d; }; } #endif diff --git a/libopie2/opiepim/core/otemplatebase.h b/libopie2/opiepim/core/otemplatebase.h index 17d9961..58cbfeb 100644 --- a/libopie2/opiepim/core/otemplatebase.h +++ b/libopie2/opiepim/core/otemplatebase.h @@ -5,55 +5,56 @@ .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIE_TEMPLATE_BASE_H -#define OPIE_TEMPLATE_BASE_H - -#include <qarray.h> +#ifndef OTEMPLATEBASE_H +#define OTEMPLATEBASE_H +/* OPIE */ #include <opie2/opimrecord.h> +/* QT */ +#include <qarray.h> namespace Opie { /** * Templates do not have a base class, This is why * we've this class * this is here to give us the possibility * to have a common base class * You may not want to use that interface internaly * POOR mans interface */ class OPimBasePrivate; struct OPimBase { /** * return the rtti */ virtual int rtti()= 0; virtual OPimRecord* record()const = 0; virtual OPimRecord* record(int uid)const = 0; virtual bool add( const OPimRecord& ) = 0; virtual bool remove( int uid ) = 0; virtual bool remove( const OPimRecord& ) = 0; virtual void clear() = 0; virtual bool load() = 0; virtual bool save() = 0; diff --git a/libopie2/opiepim/core/otimezone.cpp b/libopie2/opiepim/core/otimezone.cpp index dab68af..e67715f 100644 --- a/libopie2/opiepim/core/otimezone.cpp +++ b/libopie2/opiepim/core/otimezone.cpp @@ -6,141 +6,183 @@ .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#include "otimezone.h" + +/* STD */ #include <stdio.h> #include <stdlib.h> - #include <sys/types.h> -#include <opie2/otimezone.h> +namespace Opie +{ -namespace Opie { - - QDateTime utcTime( time_t t) { +QDateTime utcTime( time_t t ) +{ tm* broken = ::gmtime( &t ); QDateTime ret; ret.setDate( QDate( broken->tm_year + 1900, broken->tm_mon +1, broken->tm_mday ) ); ret.setTime( QTime( broken->tm_hour, broken->tm_min, broken->tm_sec ) ); return ret; } - QDateTime utcTime( time_t t, const QString& zone) { +QDateTime utcTime( time_t t, const QString& zone ) +{ QCString org = ::getenv( "TZ" ); #ifndef Q_OS_MACX // Following line causes bus errors on Mac + ::setenv( "TZ", zone.latin1(), true ); ::tzset(); tm* broken = ::localtime( &t ); ::setenv( "TZ", org, true ); #else #warning "Need a replacement for MacOSX!!" + tm* broken = ::localtime( &t ); #endif QDateTime ret; ret.setDate( QDate( broken->tm_year + 1900, broken->tm_mon +1, broken->tm_mday ) ); ret.setTime( QTime( broken->tm_hour, broken->tm_min, broken->tm_sec ) ); return ret; } - time_t to_Time_t( const QDateTime& utc, const QString& str ) { +time_t to_Time_t( const QDateTime& utc, const QString& str ) +{ QDate d = utc.date(); QTime t = utc.time(); tm broken; broken.tm_year = d.year() - 1900; broken.tm_mon = d.month() - 1; broken.tm_mday = d.day(); broken.tm_hour = t.hour(); broken.tm_min = t.minute(); broken.tm_sec = t.second(); QCString org = ::getenv( "TZ" ); #ifndef Q_OS_MACX // Following line causes bus errors on Mac + ::setenv( "TZ", str.latin1(), true ); ::tzset(); time_t ti = ::mktime( &broken ); ::setenv( "TZ", org, true ); #else #warning "Need a replacement for MacOSX!!" + time_t ti = ::mktime( &broken ); #endif + return ti; } } -namespace Opie { +namespace Opie +{ OTimeZone::OTimeZone( const ZoneName& zone ) - : m_name(zone) { -} -OTimeZone::~OTimeZone() { -} + : m_name( zone ) +{} + + +OTimeZone::~OTimeZone() +{} -bool OTimeZone::isValid()const { + +bool OTimeZone::isValid() const +{ return !m_name.isEmpty(); } /* * we will get the current timezone * and ask it to convert to the timezone date */ -QDateTime OTimeZone::toLocalDateTime( const QDateTime& dt) { +QDateTime OTimeZone::toLocalDateTime( const QDateTime& dt ) +{ return OTimeZone::current().toDateTime( dt, *this ); } -QDateTime OTimeZone::toUTCDateTime( const QDateTime& dt ) { + + +QDateTime OTimeZone::toUTCDateTime( const QDateTime& dt ) +{ return OTimeZone::utc().toDateTime( dt, *this ); } -QDateTime OTimeZone::fromUTCDateTime( time_t t) { + + +QDateTime OTimeZone::fromUTCDateTime( time_t t ) +{ return utcTime( t ); } -QDateTime OTimeZone::toDateTime( time_t t) { + + +QDateTime OTimeZone::toDateTime( time_t t ) +{ return utcTime( t, m_name ); } + + /* * convert dt to utc using zone.m_name * convert utc -> timeZoneDT using this->m_name */ -QDateTime OTimeZone::toDateTime( const QDateTime& dt, const OTimeZone& zone ) { +QDateTime OTimeZone::toDateTime( const QDateTime& dt, const OTimeZone& zone ) +{ time_t utc = to_Time_t( dt, zone.m_name ); qWarning("%d %s", utc, zone.m_name.latin1() ); return utcTime( utc, m_name ); } -time_t OTimeZone::fromDateTime( const QDateTime& time ) { + + +time_t OTimeZone::fromDateTime( const QDateTime& time ) +{ return to_Time_t( time, m_name ); } -time_t OTimeZone::fromUTCDateTime( const QDateTime& time ) { + + +time_t OTimeZone::fromUTCDateTime( const QDateTime& time ) +{ return to_Time_t( time, "UTC" ); } -OTimeZone OTimeZone::current() { + + +OTimeZone OTimeZone::current() +{ QCString str = ::getenv("TZ"); OTimeZone zone( str ); return zone; } -OTimeZone OTimeZone::utc() { + + +OTimeZone OTimeZone::utc() +{ return OTimeZone("UTC"); } -QString OTimeZone::timeZone()const { + + +QString OTimeZone::timeZone() const +{ return m_name; } } diff --git a/libopie2/opiepim/core/otimezone.h b/libopie2/opiepim/core/otimezone.h index 28ae6cb..f0b4022 100644 --- a/libopie2/opiepim/core/otimezone.h +++ b/libopie2/opiepim/core/otimezone.h @@ -6,63 +6,67 @@ .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef OPIE_TIME_ZONE_H -#define OPIE_TIME_ZONE_H +#ifndef OTIMEZONE_H +#define OTIMEZONE_H -#include <time.h> +/* QT */ #include <qdatetime.h> +/* STD */ +#include <time.h> + namespace Opie { /** * A very primitive class to convert time * from one timezone to another * and to localtime * and time_t */ class OTimeZone { + public: typedef QString ZoneName; OTimeZone( const ZoneName& = ZoneName::null ); virtual ~OTimeZone(); // just in case. bool isValid()const; /** * converts the QDateTime to a DateTime * in the local timezone * if QDateTime is 25th Jan and takes place in Europe/Berlin at 12h * and the current timezone is Europe/London the returned * time will be 11h. */ QDateTime toLocalDateTime( const QDateTime& dt ); /** * converts the QDateTime to UTC time */ QDateTime toUTCDateTime( const QDateTime& dt ); /** * reads the time_t into a QDateTime using UTC as timezone! */ @@ -71,32 +75,33 @@ class OTimeZone { /** * converts the time_t to the time in the timezone */ QDateTime toDateTime( time_t ); /** * converts the QDateTime from one timezone to this timeZone */ QDateTime toDateTime( const QDateTime&, const OTimeZone& timeZone ); /** * converts the date time into a time_t. It takes the timezone into account */ time_t fromDateTime( const QDateTime& ); /** * converts the datetime with timezone UTC */ time_t fromUTCDateTime( const QDateTime& ); static OTimeZone current(); static OTimeZone utc(); QString timeZone()const; + private: ZoneName m_name; class Private; Private* d; }; }; #endif diff --git a/libopie2/opieui/otabwidget.h b/libopie2/opieui/otabwidget.h index 51d1c6d..c7d32c2 100644 --- a/libopie2/opieui/otabwidget.h +++ b/libopie2/opieui/otabwidget.h @@ -1,28 +1,27 @@ /* This file is part of the Opie Project - - Copyright (c) 2002 Dan Williams <williamsdr@acm.org> + Copyright (C) 2002 Dan Williams <williamsdr@acm.org> =. .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. @@ -48,87 +47,86 @@ class QWidgetStack; namespace Opie { class OTabBar; /** * @class OTabWidget * @brief The OTabWidget class provides a stack of widgets. * * OTabWidget is a derivation of TrollTech's QTabWidget which provides * a stack of widgets. Widgets can be selected using either a tab bar or * drop down list box. * * The normal way to use OTabWidget is to do the following in the * constructor: * - Create a OTabWidget. * - Create a QWidget for each of the pages in the control, insert * children into it, set up geometry management for it, and use addTab() * to add the widget. */ class OTabWidget : public QWidget { Q_OBJECT -public: + public: /** * @enum TabStyle * @brief Defines how the widget selection control is displayed. * * Valid values: * - Global: use globally selected options (qpe.conf - TabStyle & TabPosition) * - TextTab: Tabbed widget selection with text labels * - IconTab: Tabbed widget selection with icon labels, text label for active widget * (similar to Opie launcher) * - TextList: Drop down list widget selection with text labels * - IconList: Drop down list widget selection with icon & text labels */ enum TabStyle { Global, TextTab, IconTab, TextList, IconList }; /** * @enum TabPosition * @brief Defines where the widget selection control is drawn. * * Valid values: * - Top: Widget selection control is drawn above widgets * - Bottom: Widget selection control is drawn below widgets */ enum TabPosition { Top, Bottom }; /** * @fn OTabWidget( QWidget *parent = 0, const char *name = 0, TabStyle s = Global, TabPosition p = Top ) * @brief Object constructor. * * @param parent Pointer to parent of this control. * @param name Name of control. * @param s Style of widget selection control. * @param p Position of the widget selection control. * * Constructs a new OTabWidget control with parent and name. The style and position parameters * determine how the widget selection control will be displayed. */ - // FIXME WFlags? -zecke OTabWidget( QWidget * = 0, const char * = 0, TabStyle = Global, TabPosition = Top ); /** * @fn ~OTabWidget() * @brief Object destructor. */ ~OTabWidget(); /** * @fn addTab( QWidget *child, const QString &icon, const QString &label ) * @brief Add new widget to control. * * @param child Widget control. * @param icon Path to icon. * @param label Text label. */ void addTab( QWidget *, const QString &, const QString & ); /** * @fn removePage( QWidget *widget ) * @brief Remove widget from control. Does not delete widget. * * @param widget Widget control to be removed. */ diff --git a/libopie2/opieui/owait.cpp b/libopie2/opieui/owait.cpp index 0fdf08d..8bb4ed6 100644 --- a/libopie2/opieui/owait.cpp +++ b/libopie2/opieui/owait.cpp @@ -1,93 +1,110 @@ -/* This file is part of the OPIE libraries - Copyright (C) 2003 Maximilian Reiss (harlekin@handhelds.org) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +/* + This file is part of the Opie Project + Copyright (C) 2003 Maximilian Reiss <harlekin@handhelds.org> + =. + .=l. + .>+-= + _;:, .> :=|. This program is free software; you can +.> <`_, > . <= redistribute it and/or modify it under +:`=1 )Y*s>-.-- : the terms of the GNU Library General Public +.="- .-=="i, .._ License as published by the Free Software + - . .-<_> .<> Foundation; either version 2 of the License, + ._= =} : or (at your option) any later version. + .%`+i> _;_. + .i_,=:_. -<s. This program is distributed in the hope that + + . -:. = it will be useful, but WITHOUT ANY WARRANTY; + : .. .:, . . . without even the implied warranty of + =_ + =;=|` MERCHANTABILITY or FITNESS FOR A + _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU +..}^=.= = ; Library General Public License for more +++= -. .` .: details. + : = ...= . :.=- + -. .:....=;==+<; You should have received a copy of the GNU + -_. . . )=. = Library General Public License along with + -- :-=` this library; see the file COPYING.LIB. + If not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -*/ -#include <qlabel.h> -#include <qlayout.h> -#include <qtimer.h> -#include <qpe/qpeapplication.h> -#include <qpainter.h> +*/ #include "owait.h" +/* OPIE */ +#include <qpe/qpeapplication.h> #include <qpe/resource.h> +/* QT */ +#include <qlayout.h> +#include <qpainter.h> + static int frame = 0; /** * This will construct a modal dialog. * * The default timer length is 10. * * @param parent The parent of the widget * @param msg The name of the object * @param dispIcon Display Icon? */ OWait::OWait(QWidget *parent, const char* msg, bool dispIcon ) - :QDialog(parent, msg, TRUE,WStyle_Customize) { + :QDialog( parent, msg, TRUE, WStyle_Customize ) +{ QHBoxLayout *hbox = new QHBoxLayout( this ); m_lb = new QLabel( this ); m_lb->setBackgroundMode ( NoBackground ); hbox->addWidget( m_lb ); hbox->activate(); m_pix = Resource::loadPixmap( "BigBusy" ); m_aniSize = m_pix.height(); resize( m_aniSize, m_aniSize ); m_timerLength = 10; m_waitTimer = new QTimer( this ); connect( m_waitTimer, SIGNAL( timeout() ), this, SLOT( hide() ) ); } -void OWait::timerEvent( QTimerEvent * ) { +void OWait::timerEvent( QTimerEvent * ) +{ frame = (++frame) % 4; repaint(); } -void OWait::paintEvent( QPaintEvent * ) { +void OWait::paintEvent( QPaintEvent * ) +{ QPainter p( m_lb ); p.drawPixmap( 0, 0, m_pix, m_aniSize * frame, 0, m_aniSize, m_aniSize ); } -void OWait::show() { +void OWait::show() +{ move( ( ( qApp->desktop()->width() ) / 2 ) - ( m_aniSize / 2 ), ( ( qApp->desktop()->height() ) / 2 ) - ( m_aniSize / 2 ) ); startTimer( 300 ); m_waitTimer->start( m_timerLength * 1000, true ); QDialog::show(); } -void OWait::hide() { +void OWait::hide() +{ killTimers(); m_waitTimer->stop(); frame = 0; QDialog::hide(); } -void OWait::setTimerLength( int length ) { +void OWait::setTimerLength( int length ) +{ m_timerLength = length; } -OWait::~OWait() { -} +OWait::~OWait() +{} diff --git a/libopie2/opieui/owait.h b/libopie2/opieui/owait.h index cbfc8d6..3267064 100644 --- a/libopie2/opieui/owait.h +++ b/libopie2/opieui/owait.h @@ -1,66 +1,75 @@ -/* This file is part of the OPIE libraries - Copyright (C) 2003 Maximilian Reiss (harlekin@handhelds.org) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +/* + This file is part of the Opie Project + Copyright (C) 2003 Maximilian Reiss <harlekin@handhelds.org> + =. + .=l. + .>+-= + _;:, .> :=|. This program is free software; you can +.> <`_, > . <= redistribute it and/or modify it under +:`=1 )Y*s>-.-- : the terms of the GNU Library General Public +.="- .-=="i, .._ License as published by the Free Software + - . .-<_> .<> Foundation; either version 2 of the License, + ._= =} : or (at your option) any later version. + .%`+i> _;_. + .i_,=:_. -<s. This program is distributed in the hope that + + . -:. = it will be useful, but WITHOUT ANY WARRANTY; + : .. .:, . . . without even the implied warranty of + =_ + =;=|` MERCHANTABILITY or FITNESS FOR A + _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU +..}^=.= = ; Library General Public License for more +++= -. .` .: details. + : = ...= . :.=- + -. .:....=;==+<; You should have received a copy of the GNU + -_. . . )=. = Library General Public License along with + -- :-=` this library; see the file COPYING.LIB. + If not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -*/ - +*/ -#ifndef WAITPOPUP_H -#define WAITPOPUP_H +#ifndef OWAIT_H +#define OWAIT_H +/* QT */ #include <qdialog.h> -#include <qpixmap.h> #include <qlabel.h> +#include <qpixmap.h> #include <qtimer.h> /** * This class displays a animated waiting icon in the middle of the screen. * * @short modal hour glass dialog * @see QDialog * @author Maximilian Reiß */ -class OWait : public QDialog { - +class OWait : public QDialog +{ Q_OBJECT public: - // FIXME Wflags -zecke? OWait(QWidget *parent=0,const char* name=0, bool dispIcon=TRUE); ~OWait(); /** * reimplemented for control reasons */ void show(); /** * Set the time before the icon will be automaticly hidden * The timer will be started once the widget will be shown. * @param length - time in seconds */ void setTimerLength( int length ); public slots: /** * reimplemented for control reasons */ void hide(); private: void timerEvent( QTimerEvent * ) ; void paintEvent( QPaintEvent * ); |