diff options
Diffstat (limited to 'kalarm/kalarmd/alarmguiiface.h')
-rw-r--r-- | kalarm/kalarmd/alarmguiiface.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/kalarm/kalarmd/alarmguiiface.h b/kalarm/kalarmd/alarmguiiface.h new file mode 100644 index 000000000..7e98c831d --- /dev/null +++ b/kalarm/kalarmd/alarmguiiface.h @@ -0,0 +1,71 @@ +/* + * alarmguiiface.h - DCOP interface which alarm daemon clients must implement + * Program: KAlarm's alarm daemon (kalarmd) + * Copyright © 2001,2004,2007 by David Jarvie <software@astrojar.org.uk> + * Based on the original, (c) 1998, 1999 Preston Brown + * Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> + * Copyright (c) 1997-1999 Preston Brown <pbrown@kde.org> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef DAEMONGUIIFACE_H +#define DAEMONGUIIFACE_H + +#include <dcopobject.h> + +namespace KAlarmd +{ + enum RegisterResult // result code of registerApp() DCOP call + { + FAILURE = 0, + SUCCESS = 1, + NOT_FOUND = 2 // notification type requires client start, but client executable not found + }; + + enum CalendarStatus // parameters to client notification + { + CALENDAR_ENABLED, // calendar is now being monitored + CALENDAR_DISABLED, // calendar is available but not being monitored + CALENDAR_UNAVAILABLE // calendar is unavailable for monitoring + }; +} + +/*============================================================================= += Class: AlarmGuiIface += Client applications should inherit from this class to receive notifications +* from the alarm daemon. +=============================================================================*/ +class AlarmGuiIface : virtual public DCOPObject +{ + K_DCOP + k_dcop: + /** Called to notify a change in status of the calendar. + @param calendarStatus new calendar status. Value is of type CalendarStatus. + */ + virtual ASYNC alarmDaemonUpdate(int calendarStatus, const QString& calendarURL) = 0; + + /** Called to notify that an alarm is due. + */ + virtual ASYNC handleEvent(const QString& calendarURL, const QString& eventID) = 0; + + /** Called to indicate success/failure of (re)register() call. + @param result success/failure code. Value is of type RegisterResult. + @param version kalarmd version, e.g. 50101 indicates 5.1.1. + */ + virtual ASYNC registered(bool reregister, int result, int version) = 0; +}; + +#endif |