#pragma interface #ifndef AGENDA_H #define AGENDA_H #include class CALENDAR_CTX{ int year; int month; int day; PRIVATE_MESSAGE changeday; // Display another day PRIVATE_MESSAGE redraw; // Display another day SSTRING team; /*~PROTOBEG~ CALENDAR_CTX */ public: CALENDAR_CTX (CALENDAR_CTX&c); CALENDAR_CTX (void); void add (int days, int months, int years); void forceredraw (void); int getday (void)const; int getmonth (void)const; const char *getteam (void)const; int getweekday (void)const; int getyear (void)const; void goto_today (void); bool is_change (void); bool must_redraw (void); void sendmessage (void); void set (CALENDAR_CTX&c); void setday (int _day); void setmonth (int _month); void setteam (const char *s); void waitfor (DIALOG&dia); /*~PROTOEND~ CALENDAR_CTX */ }; enum TASK_TYPE{ TASK_STD=0,TASK_MEETING=1,TASK_EXCEPTION=2,TASK_SUPER=3 }; #define PUBLISH_NONE 0 // The AGENDA_ITEM is not pubished on the agenda server #define PUBLISH_BUSY 1 // It simply tells we are busy/un-available #define PUBLISH_FAKE 2 // We tell something else #define PUBLISH_FULL 3 // The description is shown class AGENDA_ITEM: public ARRAY_OBJ{ SSTRING desc; SSTRING pubdesc; // Description used for PUBLISH_FAKE char everymonth; char everyweek; struct{ int year,month,day; } start,end; struct{ int start,end; } hour; char confirm; char publish[10]; // How to publish to 10 possible agenda server /*~PROTOEND~ AGENDA_ITEM */ /*~PROTOEND~ AGENDA_ITEM */ }; class AGENDA_ITEMS: public ARRAY{ /*~PROTOEND~ AGENDA_ITEMS */ /*~PROTOEND~ AGENDA_ITEMS */ }; #include "agenda.pp" #endif