2 * dbushandler.h - handler for D-Bus calls by other applications
4 * Copyright © 2001-2012 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.
24 #include "kalarmiface.h"
26 #include <kalarmcal/kaevent.h>
29 #include <kcalcore/duration.h>
31 #include <kcal/duration.h>
37 using namespace KAlarmCal
;
40 class DBusHandler
: public QObject
, public KAlarmIface
43 Q_CLASSINFO("D-Bus Interface", "org.kde.kalarm.kalarm")
48 Q_SCRIPTABLE
bool cancelEvent(const QString
& eventId
);
49 Q_SCRIPTABLE
bool triggerEvent(const QString
& eventId
);
50 Q_SCRIPTABLE QString
list();
52 Q_SCRIPTABLE
bool scheduleMessage(const QString
& message
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
53 const QString
& bgColor
, const QString
& fgColor
, const QString
& font
,
54 const QString
& audioUrl
, int reminderMins
, const QString
& recurrence
,
55 int subRepeatInterval
, int subRepeatCount
);
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
, int recurCount
);
59 Q_SCRIPTABLE
bool scheduleMessage(const QString
& message
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
60 const QString
& bgColor
, const QString
& fgColor
, const QString
& font
,
61 const QString
& audioUrl
, int reminderMins
, int recurType
, int recurInterval
, const QString
& endDateTime
);
62 Q_SCRIPTABLE
bool scheduleFile(const QString
& url
, const QString
& startDateTime
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
63 const QString
& audioUrl
, int reminderMins
, const QString
& recurrence
,
64 int subRepeatInterval
, int subRepeatCount
);
65 Q_SCRIPTABLE
bool scheduleFile(const QString
& url
, const QString
& startDateTime
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
66 const QString
& audioUrl
, int reminderMins
, int recurType
, int recurInterval
, int recurCount
);
67 Q_SCRIPTABLE
bool scheduleFile(const QString
& url
, const QString
& startDateTime
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
68 const QString
& audioUrl
, int reminderMins
, int recurType
, int recurInterval
, const QString
& endDateTime
);
69 Q_SCRIPTABLE
bool scheduleCommand(const QString
& commandLine
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
70 const QString
& recurrence
, int subRepeatInterval
, int subRepeatCount
);
71 Q_SCRIPTABLE
bool scheduleCommand(const QString
& commandLine
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
72 int recurType
, int recurInterval
, int recurCount
);
73 Q_SCRIPTABLE
bool scheduleCommand(const QString
& commandLine
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
74 int recurType
, int recurInterval
, const QString
& endDateTime
);
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 const QString
& recurrence
, int subRepeatInterval
, int subRepeatCount
);
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
, int recurCount
);
81 Q_SCRIPTABLE
bool scheduleEmail(const QString
& fromID
, const QString
& addresses
, const QString
& subject
, const QString
& message
,
82 const QString
& attachments
, const QString
& startDateTime
, int lateCancel
, unsigned flags
,
83 int recurType
, int recurInterval
, const QString
& endDateTime
);
84 Q_SCRIPTABLE
bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const QString
& startDateTime
, int lateCancel
,
85 unsigned flags
, const QString
& recurrence
, int subRepeatInterval
, int subRepeatCount
);
86 Q_SCRIPTABLE
bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const QString
& startDateTime
, int lateCancel
,
87 unsigned flags
, int recurType
, int recurInterval
, int recurCount
);
88 Q_SCRIPTABLE
bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const QString
& startDateTime
, int lateCancel
,
89 unsigned flags
, int recurType
, int recurInterval
, const QString
& endDateTime
);
90 Q_SCRIPTABLE
bool edit(const QString
& eventID
);
91 Q_SCRIPTABLE
bool editNew(int type
);
92 Q_SCRIPTABLE
bool editNew(const QString
& templateName
);
95 static bool scheduleMessage(const QString
& message
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
96 const QString
& bgColor
, const QString
& fgColor
, const QString
& fontStr
,
97 const KUrl
& audioFile
, int reminderMins
, const KARecurrence
&,
99 const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
101 const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
103 static bool scheduleFile(const KUrl
& file
, const KDateTime
& start
, int lateCancel
, unsigned flags
, const QString
& bgColor
,
104 const KUrl
& audioFile
, int reminderMins
, const KARecurrence
&,
106 const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
108 const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
110 static bool scheduleCommand(const QString
& commandLine
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
112 const KARecurrence
&, const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
114 const KARecurrence
&, const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
116 static bool scheduleEmail(const QString
& fromID
, const QString
& addresses
, const QString
& subject
, const QString
& message
,
117 const QString
& attachments
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
119 const KARecurrence
&, const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
121 const KARecurrence
&, const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
123 static bool scheduleAudio(const QString
& audioUrl
, int volumePercent
, const KDateTime
& start
, int lateCancel
, unsigned flags
,
125 const KARecurrence
&, const KCalCore::Duration
& subRepeatDuration
= KCalCore::Duration(0), int subRepeatCount
= 0);
127 const KARecurrence
&, const KCal::Duration
& subRepeatDuration
= KCal::Duration(0), int subRepeatCount
= 0);
129 static KDateTime
convertDateTime(const QString
& dateTime
, const KDateTime
& = KDateTime());
130 static KAEvent::Flags
convertStartFlags(const KDateTime
& start
, unsigned flags
);
131 static QColor
convertBgColour(const QString
& bgColor
);
133 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, const QString
& icalRecurrence
, int subRepeatInterval
, KCalCore::Duration
& subRepeatDuration
);
135 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, const QString
& icalRecurrence
, int subRepeatInterval
, KCal::Duration
& subRepeatDuration
);
137 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, int recurType
, int recurInterval
, int recurCount
);
138 static bool convertRecurrence(KDateTime
& start
, KARecurrence
&, const QString
& startDateTime
, int recurType
, int recurInterval
, const QString
& endDateTime
);
139 static bool convertRecurrence(KARecurrence
&, const KDateTime
& start
, int recurType
, int recurInterval
, int recurCount
, const KDateTime
& end
);
142 #endif // DBUSHANDLER_H