From 15318cad33835e4e2dc620d033e43cd930676cdd Mon Sep 17 00:00:00 2001 From: kergoth Date: Fri, 25 Jan 2002 22:14:26 +0000 Subject: Initial revision --- (limited to 'library/backend/palmtoprecord.h') diff --git a/library/backend/palmtoprecord.h b/library/backend/palmtoprecord.h new file mode 100644 index 0000000..0372011 --- a/dev/null +++ b/library/backend/palmtoprecord.h @@ -0,0 +1,94 @@ +/********************************************************************** +** 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 QTPALMTOP_RECORD_H +#define QTPALMTOP_RECORD_H + +#include +#include "qpcglobal.h" +#include "palmtopuidgen.h" +#include +#include + +#if defined(QPC_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class QPC_EXPORT QMap; +// MOC_SKIP_END +#endif + +class QRegExp; +namespace Qtopia { + +class RecordPrivate; +class QPC_EXPORT Record +{ +public: + Record() : mUid(0), mCats() { } + Record( const Record &c ) : mUid( c.mUid ), mCats ( c.mCats ), customMap(c.customMap) { } + virtual ~Record() { } + + Record &operator=( const Record &c ); + + virtual bool match( const QRegExp & ) const { return FALSE; } + + void setCategories( const QArray &v ) { mCats = v; } + void setCategories( int single ); + const QArray &categories() const { return mCats; } + + int uid() const { return mUid; }; + virtual void setUid( int i ) { mUid = i; uidGen().store( mUid ); } + bool isValidUid() const { return mUid != 0; } + void assignUid() { setUid( uidGen().generate() ); } + + virtual QString customField(const QString &) const; + virtual void setCustomField(const QString &, const QString &); + virtual void removeCustomField(const QString &); + + virtual bool operator == ( const Record &r ) const +{ return mUid == r.mUid; } + virtual bool operator != ( const Record &r ) const +{ return mUid != r.mUid; } + + // convenience methods provided for loading and saving to xml + static QString idsToString( const QArray &ids ); + // convenience methods provided for loading and saving to xml + static QArray idsFromString( const QString &str ); + + // for debugging + static void dump( const QMap &map ); + +protected: + virtual UidGen &uidGen() = 0; + + virtual QString customToXml() const; + +private: + int mUid; + QArray mCats; + + QMap customMap; + + RecordPrivate *d; +}; + +} + +#endif -- cgit v0.9.0.2