2 * dbushandler.h - handler for D-Bus calls by other applications
4 * Copyright © 2001,2002,2004-2007,2009-2010 by David Jarvie <djarvie@kde.org>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
25 #include "kalarmiface.h"
28 #include <kcalcore/duration.h>
30 #include <kcal/duration.h>
38 class DBusHandler
: public QObject
, public KAlarmIface
41 Q_CLASSINFO("D-Bus Interface", "org.kde.kalarm.kalarm")
46 Q_SCRIPTABLE
bool cancelEvent(const QString
& eventId
);
47 Q_SCRIPTABLE
bool triggerEvent(const QString
& eventId
);
49 Q_SCRIPTABLE
bool scheduleMessage(const QString
& message
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
50 const QString
& bgColor
, const QString
& fgColor
, const QString
& font
,
51 const QString
& audioUrl
, int reminderMins
, const QString
& recurrence
,
52 int subRepeatInterval
, int subRepeatCount
);
53 Q_SCRIPTABLE
bool scheduleMessage(const QString
& message
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
54 const QString
& bgColor
, const QString
& fgColor
, const QString
& font
,
55 const QString
& audioUrl
, int reminderMins
, int recurType
, int recurInterval
, int recurCount
);
56 Q_SCRIPTABLE
bool scheduleMessage(const QString
& message
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
57 const QString
& bgColor
, const QString
& fgColor
, const QString
& font
,
58 const QString
& audioUrl
, int reminderMins
, int recurType
, int recurInterval
, const QString
& endDateTime
);
59 Q_SCRIPTABLE
bool scheduleFile(const QString
& url
, const QString
& startDateTime
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
60 const QString
& audioUrl
, int reminderMins
, const QString
& recurrence
,
61 int subRepeatInterval
, int subRepeatCount
);
62 Q_SCRIPTABLE
bool scheduleFile(const QString
& url
, const QString
& startDateTime
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
63 const QString
& audioUrl
, int reminderMins
, int recurType
, int recurInterval
, int recurCount
);
64 Q_SCRIPTABLE
bool scheduleFile(const QString
& url
, const QString
& startDateTime
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
65 const QString
& audioUrl
, int reminderMins
, int recurType
, int recurInterval
, const QString
& endDateTime
);
66 Q_SCRIPTABLE
bool scheduleCommand(const QString
& commandLine
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
67 const QString
& recurrence
, int subRepeatInterval
, int subRepeatCount
);
68 Q_SCRIPTABLE
bool scheduleCommand(const QString
& commandLine
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
69 int recurType
, int recurInterval
, int recurCount
);
70 Q_SCRIPTABLE
bool scheduleCommand(const QString
& commandLine
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
71 int recurType
, int recurInterval
, const QString
& endDateTime
);
72 Q_SCRIPTABLE
bool scheduleEmail(const QString
& fromID
, const QString
& addresses
, const QString
& subject
, const QString
& message
,
73 const QString
& attachments
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
74 const QString
& recurrence
, int subRepeatInterval
, int subRepeatCount
);
75 Q_SCRIPTABLE
bool scheduleEmail(const QString
& fromID
, const QString
& addresses
, const QString
& subject
, const QString
& message
,
76 const QString
& attachments
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
77 int recurType
, int recurInterval
, int recurCount
);
78 Q_SCRIPTABLE
bool scheduleEmail(const QString
& fromID
, const QString
& addresses
, const QString
& subject
, const QString
& message
,
79 const QString
& attachments
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
80 int recurType
, int recurInterval
, const QString
& endDateTime
);
81 Q_SCRIPTABLE
bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const QString
& startDateTime
, int lateCancel
,
82 unsigned flags
, const QString
& recurrence
, int subRepeatInterval
, int subRepeatCount
);
83 Q_SCRIPTABLE
bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const QString
& startDateTime
, int lateCancel
,
84 unsigned flags
, int recurType
, int recurInterval
, int recurCount
);
85 Q_SCRIPTABLE
bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const QString
& startDateTime
, int lateCancel
,
86 unsigned flags
, int recurType
, int recurInterval
, const QString
& endDateTime
);
87 Q_SCRIPTABLE
bool edit(const QString
& eventID
);
88 Q_SCRIPTABLE
bool editNew(int type
);
89 Q_SCRIPTABLE
bool editNew(const QString
& templateName
);
92 static bool scheduleMessage(const QString
& message
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
93 const QString
& bgColor
, const QString
& fgColor
, const QString
& fontStr
,
94 const KUrl
& audioFile
, int reminderMins
, const KARecurrence
&,
96 const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
98 const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
100 static bool scheduleFile(const KUrl
& file
, const KDateTime
& start
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
101 const KUrl
& audioFile
, int reminderMins
, const KARecurrence
&,
103 const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
105 const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
107 static bool scheduleCommand(const QString
& commandLine
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
109 const KARecurrence
&, const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
111 const KARecurrence
&, const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
113 static bool scheduleEmail(const QString
& fromID
, const QString
& addresses
, const QString
& subject
, const QString
& message
,
114 const QString
& attachments
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
116 const KARecurrence
&, const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
118 const KARecurrence
&, const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
120 static bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
122 const KARecurrence
&, const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
124 const KARecurrence
&, const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
126 static KDateTime
convertDateTime(const QString
& dateTime
, const KDateTime
& = KDateTime());
127 static unsigned convertStartFlags(const KDateTime
& start
, unsigned flags
);
128 static QColor
convertBgColour(const QString
& bgColor
);
130 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, const QString
& icalRecurrence
, int subRepeatInterval
, KCalCore::Duration
& subRepeatDuration
);
132 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, const QString
& icalRecurrence
, int subRepeatInterval
, KCal::Duration
& subRepeatDuration
);
134 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, int recurType
, int recurInterval
, int recurCount
);
135 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, int recurType
, int recurInterval
, const QString
& endDateTime
);
136 static bool convertRecurrence(KARecurrence
&, const KDateTime
& start
, int recurType
, int recurInterval
, int recurCount
, const KDateTime
& end
);
139 #endif // DBUSHANDLER_H