kitchensync
synceelist.cpp00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include "synceelist.h"
00023
00024 #include "calendarsyncee.h"
00025 #include "addressbooksyncee.h"
00026 #include "bookmarksyncee.h"
00027 #include "unknownsyncee.h"
00028
00029 using namespace KSync;
00030
00031 SynceeList::SynceeList()
00032 {
00033 }
00034
00035 SynceeList::~SynceeList()
00036 {
00037 }
00038
00039 CalendarSyncee *SynceeList::calendarSyncee() const
00040 {
00041 return templateSyncee<CalendarSyncee>();
00042 }
00043
00044 AddressBookSyncee *SynceeList::addressBookSyncee() const
00045 {
00046 return templateSyncee<AddressBookSyncee>();
00047 }
00048
00049 BookmarkSyncee *SynceeList::bookmarkSyncee() const
00050 {
00051 return templateSyncee<BookmarkSyncee>();
00052 }
00053
00054 UnknownSyncee *SynceeList::unknownSyncee()const
00055 {
00056 return templateSyncee<UnknownSyncee>();
00057 }
00058
00059 template<class T>
00060 T *SynceeList::templateSyncee()const
00061 {
00062 T *syncee;
00063
00064 ConstIterator it;
00065 for( it = begin(); it != end(); ++it ) {
00066 syncee = dynamic_cast<T*>( *it );
00067 if ( syncee ) return syncee;
00068 }
00069
00070 return 0;
00071 }
00072
00077 void SynceeList::deleteAndClear()
00078 {
00079 for ( Iterator it = begin(); it != end(); ++it )
00080 delete *it;
00081 clear();
00082 }
00083
|