organizer_plat/calendar_custamization_api/inc/calennotificationhandler.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Wed, 09 Jun 2010 09:40:23 +0300
branchRCL_3
changeset 36 9c5b1510919f
parent 12 38571fd2a704
child 48 bf573002ff72
permissions -rw-r--r--
Revision: 201021 Kit: 2010123

/*
* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:  Notification interface for S60 Calendar customizations
*
*/

#ifndef CALENNOTIFICATIONHANDLER_H
#define CALENNOTIFICATIONHANDLER_H

/**
 * @enum TCalenNotification
 *
 * @brief Notification interface for S60 Calendar customizations
 */
enum TCalenNotification
    {
    ECalenNotifyAll                                = 0, // Receive all notifications
    ECalenNotifyEntryInstanceViewCreated,
    ECalenNotifyEntryInstanceViewCreationFailed,
    ECalenNotifyContextChanged,
    ECalenNotifyExternalDatabaseChanged,
    ECalenNotifyEntrySaved,
    ECalenNotifyEntryDeleted,
    ECalenNotifyMultipleEntriesDeleted,
    ECalenNotifyInstanceSaved,
    ECalenNotifyInstanceDeleted,
    ECalenNotifySystemTimeChanged,
    ECalenNotifySystemLocaleChanged,
    ECalenNotifyLostAlarms,
    ECalenNotifyAlarmStopped,    
    ECalenNotifyAlarmSnoozed,
    ECalenNotifyCmdLineLaunch,
    ECalenNotifyAvkonViewSwitchLaunch,
    ECalenNotifySettingsChanged,
    ECalenNotifyViewCreationStarted,
    ECalenNotifyDialogClosed,
    ECalenNotifyCommandFailed,
    ECalenNotifyDeleteFailed,
    ECalenNotifyEntryClosed,
    ECalenNotifySettingsClosed,
    ECalenNotifySettingsCRepKeyChanged,
    ECalenNotifyPluginEnabledDisabled,
    ECalenNotifyEComRegistryChanged,
    ECalenNotifyResourceChanged,
    ECalenNotifyViewPopulationComplete,
    ECalenNotifyAppForegrounded,
    ECalenNotifyAppBackgrounded,
    ECalenNotifyMarkedEntryDeleted,
    ECalenNotifyCheckPluginUnloading,
    ECalenNotifyEntrySent,
    ECalenNotifyCancelDelete,
    ECalenNotifyDayViewClosed,
    ECalenNotifyWeekViewClosed,
	ECalenNotifyMapClosed,
	ECalenNotifyCancelMapLaunch,
    ECalenNotifyMissedAlarmViewClosed,
    ECalenNotifyMissedEventViewClosed,
    ECalenNotifyCalendarFieldChanged,
    ECalenNotifyCancelStatusUpdation,
    ECalenNotifyMarkedEntryCompleted,
    ECalenNotifyAttachmentAdded,
    ECalenNotifyAttachmentRemoved,
    ECalenNotifyAttachmentViewerClosed,
    ECalenNotifyDeleteInstanceView,
    ECalenNotifyRealExit,
	ECalenNotifyStopAlarm,
	ECalenNotifyCalendarInfoCreated,
	ECalenNotifyCalendarInfoUpdated,
	ECalenNotifyCalendarFileDeleted,
	ECalenNotifyEntrySendCancel,
    ECalenNotifyUserDefined1,
    ECalenNotifyUserDefined2,
    ECalenNotifyUserDefined3,
    ECalenNotifyUserDefined4,
    ECalenNotifyLast  
    };

/**
 * @class MCalenNotificationHandler
 * @brief Class for handling calendar notifications.
 * Clients have to implement this class to recieve notifications
 */
class MCalenNotificationHandler
    {
    public:			// New functions
		
		/** 
		 * @brief Handle notifications specified by aNotification
		 * 
		 * @param aNotification Nofication to be handled
		 */
		virtual void HandleNotification( const TCalenNotification aNotification ) = 0;
    };

#endif  // CALENNOTIFICATIONHANDLER_H

// End of file