kitchensync

addressbookmerger.h

00001 /*
00002     This file is part of KitchenSync.
00003 
00004     Copyright (c) 2002,2003,2004 Holger Freyther <zecke@handhelds.org>
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019     Boston, MA 02110-1301, USA.
00020 */
00021 
00022 #ifndef KSYNC_ADDRESSBOOK_MERGER_H
00023 #define KSYNC_ADDRESSBOOK_MERGER_H
00024 
00025 #include "merger.h"
00026 
00027 namespace KSync {
00028 class KDE_EXPORT AddressBookMerger : public Merger 
00029 {
00030 public:
00031     enum Supports {
00032       FamilyName,
00033       GivenName,
00034       AdditionalName,
00035       Prefix,
00036       Suffix,
00037       NickName,
00038       Birthday,
00039       HomeAddress,
00040       BusinessAddress,
00041       TimeZone,
00042       Geo,
00043       Title,
00044       Role,
00045       Organization,
00046       Note,
00047       Url,
00048       Secrecy,
00049       Picture,
00050       Sound,
00051       Agent,
00052       HomeNumbers,
00053       OfficeNumbers,
00054       Messenger,
00055       PreferredNumber,
00056       Voice,
00057       Fax,
00058       Cell,
00059       Video,
00060       Mailbox,
00061       Modem,
00062       CarPhone,
00063       ISDN,
00064       PCS,
00065       Pager,
00066       HomeFax,
00067       WorkFax,
00068       OtherTel,
00069       Category,
00070       Custom,
00071       Keys,
00072       Logo,
00073       Email,
00074       Emails // more than one
00075     };
00076 
00077     AddressBookMerger(const QBitArray&);
00078     ~AddressBookMerger();
00079 
00080     bool merge( SyncEntry* entry, SyncEntry* other );
00081  private:
00082     QBitArray mSupports;
00083 };
00084 }
00085 
00086 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys