00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef FUNCTIONS_H
00022 #define FUNCTIONS_H
00023
00026 #include <qsize.h>
00027 #include <qptrlist.h>
00028 #include <qstring.h>
00029
00030 #include "alarmevent.h"
00031
00032 class QObject;
00033 class QWidget;
00034 class QString;
00035 class KAction;
00036 class KActionCollection;
00037 namespace KCal { class Event; }
00038 class KAEvent;
00039 class MainWindow;
00040 class AlarmListView;
00041 class TemplateListView;
00042 class TemplateMenuAction;
00043
00044 namespace KAlarm
00045 {
00046
00048 enum FileType { Unknown, TextPlain, TextFormatted, TextApplication, Image };
00050 enum UpdateStatus {
00051 UPDATE_OK,
00052 UPDATE_ERROR,
00053 UPDATE_KORG_ERR
00054 };
00056 enum UpdateError { KORG_ERR_ADD, KORG_ERR_MODIFY, KORG_ERR_DELETE };
00057
00058
00060 MainWindow* displayMainWindowSelected(const QString& eventID = QString::null);
00061 bool readConfigWindowSize(const char* window, QSize&);
00062 void writeConfigWindowSize(const char* window, const QSize&);
00066 FileType fileType(const QString& mimetype);
00067 inline int Version(int major, int minor, int rev) { return major*10000 + minor*100 + rev; }
00068 int getVersionNumber(const QString& version, QString* subVersion = 0);
00069 QString browseFile(const QString& caption, QString& defaultDir, const QString& initialFile = QString::null,
00070 const QString& filter = QString::null, int mode = 0, QWidget* parent = 0, const char* name = 0);
00072 KAction* createNewAlarmAction(const QString& label, QObject* receiver, const char* slot, KActionCollection*, const char* name);
00074 TemplateMenuAction* createNewFromTemplateAction(const QString& label, QObject* receiver, const char* slot, KActionCollection*, const char* name);
00078 QValueList<KAEvent> templateList();
00079 void outputAlarmWarnings(QWidget* parent, const KAEvent* = 0);
00080 void resetDaemon();
00081 void resetDaemonIfQueued();
00082 QString runKMail(bool minimise);
00083 bool runProgram(const QCString& program, const QCString& windowName, QCString& dcopName, QString& errorMessage);
00084
00085 UpdateStatus addEvent(KAEvent&, AlarmListView* selectionView, bool useEventID = false, bool allowKOrgUpdate = true);
00086 bool addExpiredEvent(KAEvent&);
00087 bool addTemplate(KAEvent&, TemplateListView* selectionView);
00088 UpdateStatus modifyEvent(KAEvent& oldEvent, const KAEvent& newEvent, AlarmListView* selectionView);
00089 void updateEvent(KAEvent&, AlarmListView* selectionView, bool archiveOnDelete = true, bool incRevision = true);
00090 void updateTemplate(const KAEvent&, TemplateListView* selectionView);
00091 UpdateStatus deleteEvent(KAEvent&, bool archive = true);
00092 void deleteTemplate(const KAEvent&);
00093 void deleteDisplayEvent(const QString& eventID);
00094 UpdateStatus reactivateEvent(KAEvent&, AlarmListView* selectionView, bool useEventID = false);
00095 void enableEvent(KAEvent&, AlarmListView* selectionView, bool enable);
00096 void displayUpdateError(QWidget* parent, UpdateError, bool multipleAlarms = false);
00097
00098 QString stripAccel(const QString&);
00099
00100 int localeFirstDayOfWeek();
00101
00102
00103
00104
00105
00106 inline int weekDay_to_localeDayInWeek(int weekDay) { return (weekDay + 7 - localeFirstDayOfWeek()) % 7; }
00107
00108
00109
00110
00111
00112 inline int localeDayInWeek_to_weekDay(int index) { return (index + localeFirstDayOfWeek() - 1) % 7 + 1; }
00113
00114 }
00115
00116 #endif // FUNCTIONS_H