src/include/common/vocl/iCalendar/ToDo.h

00001 /*
00002  * Copyright (C) 2003-2007 Funambol, Inc
00003  *
00004  * This program is free software; you can redistribute it and/or modify
00005  * it under the terms of the GNU General Public License version 2 as
00006  * published by the Free Software Foundation.
00007  *
00008  * This program is distributed in the hope that it will be useful,
00009  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00010  * MERCHANTABILITY, TITLE, NONINFRINGEMENT or FITNESS FOR A PARTICULAR
00011  * PURPOSE.  See the GNU General Public License for more details.
00012  *
00013  * You should have received a copy of the GNU General Public License
00014  * along with this program; if not, write to the Free Software
00015  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
00016  * 02111-1307  USA
00017  */
00018 
00019 
00020 #ifndef INCL_ICALENDAR_TODO
00021 #define INCL_ICALENDAR_TODO
00022 
00024 #include "vocl/VObject.h"
00025 #include "vocl/iCalendar/iCalProperty.h"
00026 
00027 class ToDo : public VObject, public ArrayElement {
00028 
00029 private:
00030     iCalProperty* classEvent;
00031     iCalProperty* completed;
00032     iCalProperty* created;
00033     iCalProperty* description;
00034     iCalProperty* dtStamp;
00035     iCalProperty* dtStart;
00036     iCalProperty* geo;
00037     iCalProperty* lastMod;
00038     iCalProperty* location;
00039     iCalProperty* organizer;
00040     iCalProperty* percent;
00041     iCalProperty* priority;
00042     iCalProperty* recurID;
00043     iCalProperty* seq;
00044     iCalProperty* status;
00045     iCalProperty* summary;
00046     iCalProperty* uid;
00047     iCalProperty* url;
00048     iCalProperty* due;
00049     iCalProperty* duration;
00050     ArrayList* attach;
00051     ArrayList* attendee;
00052     ArrayList* categories;
00053     ArrayList* comment;
00054     ArrayList* contact;
00055     ArrayList* exDate;
00056     ArrayList* exRule;
00057     ArrayList* rStatus;
00058     ArrayList* related;
00059     ArrayList* resources;
00060     ArrayList* rDate;
00061     ArrayList* rRule;
00062     ArrayList* xProp;
00063     void set(iCalProperty** oldProperty, iCalProperty& newProperty);
00064     iCalProperty* getiCalPropertyFromVProperty(VProperty* vp);
00065     VProperty* getVPropertyFromiCalProperty(WCHAR* name, iCalProperty* prop);
00066 
00067 public:
00068     ToDo();
00069     ~ToDo();
00070     WCHAR* toString();
00071     void setClass(iCalProperty& a);
00072     void setCompleted(iCalProperty& a);
00073     void setCreated(iCalProperty& a);
00074     void setDescription(iCalProperty& a);
00075     void setDtStamp(iCalProperty& a);
00076     void setDtStart(iCalProperty& a);
00077     void setGeo(iCalProperty& a);
00078     void setLastMod(iCalProperty& a);
00079     void setLocation(iCalProperty& a);
00080     void setOrganizer(iCalProperty& a);
00081     void setPercent(iCalProperty& a);
00082     void setPriority(iCalProperty& a);
00083     void setRecurID(iCalProperty& a);
00084     void setSequence(iCalProperty& a);
00085     void setStatus(iCalProperty& a);
00086     void setSummary(iCalProperty& a);
00087     void setUid(iCalProperty& a);
00088     void setUrl(iCalProperty& a);
00089     void setDue(iCalProperty& a);
00090     void setDuration(iCalProperty& a);
00091     void setAttach(ArrayList& list);
00092     void setAttendee(ArrayList& list);
00093     void setCategories(ArrayList& list);
00094     void setComment(ArrayList& list);
00095     void setContact(ArrayList& list);
00096     void setExDate(ArrayList& list);
00097     void setExRule(ArrayList& list);
00098     void setRStatus(ArrayList& list);
00099     void setRelated(ArrayList& list);
00100     void setResources(ArrayList& list);
00101     void setRDate(ArrayList& list);
00102     void setRRule(ArrayList& list);
00103     void setXProp(ArrayList& list);
00104 
00105     iCalProperty* getClass();
00106     iCalProperty* getCompleted();
00107     iCalProperty* getCreated();
00108     iCalProperty* getDescription();
00109     iCalProperty* getDtStamp();
00110     iCalProperty* getDtStart();
00111     iCalProperty* getGeo();
00112     iCalProperty* getLastMod();
00113     iCalProperty* getLocation();
00114     iCalProperty* getOrganizer();
00115     iCalProperty* getPercent();
00116     iCalProperty* getPriority();
00117     iCalProperty* getRecurID();
00118     iCalProperty* getSequence();
00119     iCalProperty* getStatus();
00120     iCalProperty* getSummary();
00121     iCalProperty* getUid();
00122     iCalProperty* getUrl();
00123     iCalProperty* getDue();
00124     iCalProperty* getDuration();
00125     ArrayList* getAttach();
00126     ArrayList* getAttendee();
00127     ArrayList* getCategories();
00128     ArrayList* getComment();
00129     ArrayList* getContact();
00130     ArrayList* getExDate();
00131     ArrayList* getExRule();
00132     ArrayList* getRStatus();
00133     ArrayList* getRelated();
00134     ArrayList* getResources();
00135     ArrayList* getRDate();
00136     ArrayList* getRRule();
00137     ArrayList* getXProp();
00138 
00139         ArrayElement* clone();
00140 
00141 };
00143 #endif

Generated on Tue Oct 30 15:11:26 2007 for Funambol C++ Client Library by  doxygen 1.5.2