diff -r 1fc85118c3ae -r 870918037e16 eventsui/eventsengine/inc/evtevent.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/eventsui/eventsengine/inc/evtevent.h Wed Sep 01 12:31:27 2010 +0100 @@ -0,0 +1,349 @@ +/* +* Copyright (c) 2008 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: Concrete Class for Location Events. +* +*/ + + +#ifndef C_EVTEVENT_H +#define C_EVTEVENT_H + +// System Includes +#include +#include + +// User Includes +#include "evtdefs.h" + +// Forward Declarations +class CEvtAction; + +// extern data types + +// global Functions + +// constants go here + +/** + * @class CEvtEvent + * Concrete class that encapsulates all the information related for + * Event. + * + * This class is used to store the detailed information for an event. + * + * @lib evtstorage.lib + * @since S60 v9.1 + */ +class CEvtEvent : public CBase + { +public: + /** + * Constructs a new instance of Event. + * + * @return The new instance of Event object. + * @leave System wide error code if the object creation fails. + */ + IMPORT_C static CEvtEvent* NewL(); + + /** + * Constructs a new instance of Event Object. + * Leaves the created instance on the cleanup stack. + * + * @return The new instance of Event object. + * @leave System wide error code if the object creation fails. + */ + IMPORT_C static CEvtEvent* NewLC(); + + /** + * Destructor. + */ + virtual ~CEvtEvent(); + +public: // Get and Set methods + + /** + * Gets the Trigger id, identifying the Location Event. + * This identifier is definded by Location Triggering Engine. + * + * @since S60 v9.1 + * @return Event identifier identifying the Location Event. + */ + IMPORT_C TEvtEventId EventId() const; + + /** + * Set the Trigger id, identifying the Location Event. The + * identifer is definded by Location Triggering Engine. + * + * @since S60 v9.1 + * @param[in] aId Event identifier identifying the Location Event. + */ + IMPORT_C void SetEventId( const TEvtEventId aId ); + + /** + * Gets the Subject for the Location Events. + * The Subject is defined by the Location EventsUi on Creation. + * A reference to the object's internal string is returned. + * + * @since S60 v9.1 + * @return Subject for the Location Event. If the Subject has not + * been set for the Location Event, then a NULL + * string is returned. + */ + IMPORT_C TPtrC Subject() const; + + /** + * Set the Subject String for the Location Event. The Subject is + * copied. + * + * @since S60 v9.1 + * @param[in] aSubject Subject String for the Location Event. + * The Subject string is copied. + * @leave KErrNoMemory If there is not enough memory to copy the string. + */ + IMPORT_C void SetSubjectL( const TDesC& aSubject ); + + /** + * Gets the Place for the Location Events. + * The Place is defined by the Location EventsUi on Creation. + * A reference to the object's internal string is returned. + * + * @since S60 v9.1 + * @return Place String for the Location Event. If the Place has not + * been set for the Location Event, then a NULL + * string is returned. + */ + IMPORT_C TPtrC Place() const; + + /** + * Set the Place String for the Location Event. The Place is + * copied. + * + * @since S60 v9.1 + * @param[in] aPlace Place String for the Location Event. + * The Place string is copied. + * @leave KErrNoMemory If there is not enough memory to copy the string. + */ + IMPORT_C void SetPlaceL( const TDesC& aPlace ); + + /** + * Gets the Status of the Location Event. + * The Status is defined by the Location EventsUi on Creation. + * Status is updated as and when the Event moves to different state. + * + * @since S60 v9.1 + * @return TEvtEventStatus Status for the Location Event. + */ + IMPORT_C TEvtEventStatus EventStatus() const; + + /** + * Set the Status for the Location Event. + * + * @since S60 v9.1 + * @param[in] aEventStatus Status for the Location Event. + */ + IMPORT_C void SetEventStatus( + const TEvtEventStatus aEventStatus ); + + /** + * Gets the Radius for the Location Events. + * The Radius is defined by the Location EventsUi on Creation. + * Radius is defined based on the place. + * + * @since S60 v9.1 + * @return Radius for the Location Event. + */ + IMPORT_C TReal Radius() const; + + /** + * Set the Radius for the Location Event. + * + * @since S60 v9.1 + * @param[in] aRadius Radius for the Location Event. + */ + IMPORT_C void SetRadius( const TReal aRadius ); + + /** + * Gets the Repeast flag for the Location Event. + * The Repeast is defined by the Location EventsUi on Creation. + * + * @since S60 v9.1 + * @return TBool Repeat flag for the Location Event. + */ + IMPORT_C TBool Repeat() const; + + /** + * Set the Repeat flag for the Location Event. + * + * @since S60 v9.1 + * @param[in] TBool Repeat flag for the Location Event. + */ + IMPORT_C void SetRepeat( const TBool aRepeat ); + + /** + * Gets the Description for the Location Events. + * The Description is defined by Location EventsUi on Creation. + * A reference to the object's internal string is returned. + * + * @since S60 v9.1 + * @return Description for the Location Event. If the Description + * has not been set for the Location Event, then a NULL + * string is returned. + */ + IMPORT_C TPtrC Description() const; + + /** + * Set the Description String for the Location Event. The + * Description is copied. + * + * @since S60 v9.1 + * @param[in] aDescription Description String for the Location Event. + * The Description string is copied. + * @leave KErrNoMemory If there is not enough memory to copy the string. + */ + IMPORT_C void SetDescriptionL( const TDesC& aDescription ); + + /** + * Gets the Action for the Location Events. + * The Action is defined by the Location EventsUi on Creation. + * A reference to the object's action is returned. + * + * @since S60 v9.1 + * @return Action for the Location Event. If the Action has + * not been set for the Location Event, then a NULL + * is returned. + */ + IMPORT_C CEvtAction& Action() const; + + /** + * Set the Action for the Location Event. The Action is + * copied. + * + * @since S60 v9.1 + * @param[in] aAction Action for the Location Event. + * The ownership of Action is transferred to Event. + * @leave KErrNoMemory If there is not enough memory to copy the string. + */ + IMPORT_C void SetActionL( CEvtAction* aAction ); + + /** + * Check if Action is assigned to the Event. + * + * @since S60 v9.1 + * @TBool Returns ETrue if action is present Or else EFalse. + */ + IMPORT_C TBool HasAction( ); + + /** + * Set the Location for the Location Event. + * + * @since S60 v9.1 + * @param[in] aLocation Location for the Location Event. + * @leave KErrNoMemory If there is not enough memory to copy the string. + */ + void SetLocationL( TPosition& aLocation ); + + /** + * Gets the Location for the Location Events. + * The Location is defined by the Location EventsUi on Creation. + * A reference to the object's action is returned. + * + * @since S60 v9.1 + * @return Location for the Location Event. If the Action has + * not been set for the Location Event, then a NULL + * is returned. + */ + IMPORT_C TPosition& Location() const; + +private: // methods + /** + * Default C++ Constructor. + */ + CEvtEvent(); + + /** + * Default Copy Constructor. + */ + CEvtEvent(CEvtEvent& ); + + /** + * Second phase of the two phase constructor. + */ + void ConstructL(); + +private: // data + + /** + * System wide unique identifier identifying the Location Event. + * This identifier is defined by the Location Triggering Engine. + * + * Owns + */ + TEvtEventId iEventId; + + /** + * Event Subject. + * Subject for the Location Event. The Subject is defined by the Location + * Events Ui. + * + * Owns + */ + HBufC* iSubject; + + /** + * Event Place. + * Place for the Location Event. The String is defined by the Location + * Events Ui. + * + * Owns + */ + HBufC* iPlace; + + /** + * Event Status. + */ + TEvtEventStatus iEventStatus; + + /** + * Radius for Accuracy. + */ + TReal iRadius; + + /** + * Repeat Event. + */ + TBool iRepeat; + + /** + * Event Description. + * Description for the Location Event. The String is defined by the + * Location Events Ui. + * + * Owns + */ + HBufC* iDescription; + + /** + * Tone String for Event. + */ + CEvtAction* iAction; + + /** + * lat-long information + * + */ + TPosition* iLocation; + + }; + +#endif // C_EVTEVENT_H