diff -r 1fc85118c3ae -r 870918037e16 eventsui/eventshandlerui/eventsnotifier/evtinfonote/inc/evtinfonote.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/eventsui/eventshandlerui/eventsnotifier/evtinfonote/inc/evtinfonote.h Wed Sep 01 12:31:27 2010 +0100 @@ -0,0 +1,203 @@ +/* +* 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: Info Note implementation +* +*/ + + +#ifndef C_EVTINFONOTE_H +#define C_EVTINFONOTE_H + +// System Includes +#include + +// User Includes + +// Forward Declarations +class CEikonEnv; +class CEvtInfoNoteImpl; +class CAknNotifierAppServerAppUi; +class CEvtInfoNoteInputParam; + +/** + * Info Note implementation for Event UI Triggers + * + * This class provides the notifier implementation which displays the + * Events UI trigger notifiers. This class is displays the subject, + * description and the accuracy levels of the triggers fired. + * + * @since S60 v9.1 + */ +class CEvtInfoNote : public CActive, + public MEikSrvNotifierBase2 + { +private: // Constants and Enumerations + enum TEvtInfoNoteEvent + { + // No event + ENone, + + // Display the event trigger info note + EDisplayNotifier, + + }; + +public: + /** + * Static two phase constructor + */ + static CEvtInfoNote* NewL(); + + /** + * Destructor. + */ + virtual ~CEvtInfoNote(); + +public: // Inherited from MEikSrvNotifierBase2 + + /** + * Frees all the resources owned by the notifier + */ + virtual void Release(); + + /** + * Gets the notifier parameters. + */ + TNotifierInfo Info() const; + + /** + * Starts the notifier. + */ + virtual TPtrC8 StartL( const TDesC8& aBuffer ); + + /** + * Starts the notifier. This is an asynchronous function. The completion + * of the request can be communicated through the RMessagePtr2 object + */ + virtual void StartL( const TDesC8& aBuffer, + TInt aReplySlot, + const RMessagePtr2& aMessage ); + + /** + * Cancels an active notifier. + */ + virtual void Cancel(); + + /** + * Updates a currently active notifier with new data. + */ + virtual TPtrC8 UpdateL( const TDesC8& aBuffer ); + + /** + * Updates a currently active notifier with new data. + */ + virtual void UpdateL( const TDesC8& aBuffer, + TInt aReplySlot, + const RMessagePtr2& aMessage); + + /** + * Registers the Info Note display + */ + virtual TNotifierInfo RegisterL(); + +protected: + /** + * C++ constructor made protected for this class must not be instantiated + * directly + */ + CEvtInfoNote(); + + /** + * Second phase of the two phase constructor + */ + void ConstructL(); + +protected: // Inherited from CActive + virtual void RunL(); + + virtual void DoCancel(); + + virtual TInt RunError( TInt aError ); + +private: + /** + * Completes any outstanding request with the requested error code. + */ + void CompleteMessage( TInt aError, + TInt aKeyPressEvent = ENone ); + + /** + * Converts the current input buffer into the Input parameter + * structure. + */ + CEvtInfoNoteInputParam* GetInputParametersLC(); + +protected: + /** + * Eikon Env pointer + */ + CEikonEnv* iEikEnv; + + /** + * Notifier information structure + * Owns + */ + TNotifierInfo iInfo; + +private: // Data members + + /** + * Handle to the current message + */ + RMessagePtr2 iMessage; + + /** + * Confirmation query dialog + */ + CEvtInfoNoteImpl* iInfoNote; + + /** + * Resource file handle + */ + TInt iResourceFileFlag; + + /** + * Current Trigger event + */ + TEvtInfoNoteEvent iTriggerEvent; + + /** + * Boolean flag to indicate whether App switching has been + * enabled. + */ + TBool iAppSwitchSupress; + + /** + * Reference to the Notifier App server's Application UI + */ + CAknNotifierAppServerAppUi* iAppUi; + + /** + * Input Buffer + * Owns + */ + HBufC8* iInputBuffer; + + /** + * Reply Slot + */ + TInt iReplySlot; + }; + +#endif // C_EVTINFONOTE_H