diff -r 000000000000 -r 2f259fa3e83a classicui_plat/extended_notifiers_api/inc/aknSoftNotificationParameters.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/classicui_plat/extended_notifiers_api/inc/aknSoftNotificationParameters.h Tue Feb 02 01:00:49 2010 +0200 @@ -0,0 +1,142 @@ +/* +* Copyright (c) 2002-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: Utility implementation for CAknSoftNotificationParameters. +* +*/ + +#ifndef AKN_SOFT_NOTIFICATION_PARAMETERS +#define AKN_SOFT_NOTIFICATION_PARAMETERS + +// INCLUDES +#include // For view server definitions +#include // For CAknNoteDialog::TTone + +// CLASS DECLARATION + +/** +* Utility implementation for CAknSoftNotificationParameters +* +* @lib AknNotifyPlugin.lib +* @since S60 1.2 +*/ +class CAknSoftNotificationParameters : public CBase + { +public: // constructors and destructor + + /** + * Static constructor for creating custom soft notification parameters. + * Initializes the member variables with null values. + * + * @return The new object for custom soft notification parameters. + */ + IMPORT_C static CAknSoftNotificationParameters* NewL(); + + /** + * Static constructor for creating custom soft notification parameters. + * + * @param aResourceFile Full resource file name (containing drive and path). + * @param aNoteResourceId Resource ID in given resource file. + * Must be a resource of type AVKON_NOTE. + * @param aPriority Priority for soft notification. + * @param aSoftkeys Resource ID for softkeys. Must be from avkon.rsg. + * @param aTone Tone for soft notification. + * @return The new object for custom soft notification parameters. + */ + IMPORT_C static CAknSoftNotificationParameters* NewL( + const TDesC& aResourceFile, + TInt aNoteResourceId, + TInt aPriority, + TInt aSoftkeys, + CAknNoteDialog::TTone aTone ); + + /** + * Static constructor for creating custom soft notification parameters. + * + * @param aResourceFile Full resource file name (containing drive and path). + * @param aNoteResourceId Resource ID in given resource file. + * Must be a resource of type AVKON_NOTE. + * @param aPriority Priority for soft notification. + * @param aSoftkeys Resource ID for softkeys. Must be from avkon.rsg. + * @param aTone Tone for soft notification. + * @param aViewId View ID of the view where to switch in case user chooses + * accept softkey in the soft notification. + * @param aCustomMessageId Custom Uid sent to the view in the view activation process. + * @param aAcceptKeyId ID of a softkey used for accepting the query. Exiting type softkeys + * (e.g. "cancel", "exit", "back", "done", etc.) should not be used. + * @param aViewActivationMsg Custom message sent to the view in + * the view activation process. + * @return The new object for custom soft notification parameters. + */ + IMPORT_C static CAknSoftNotificationParameters* NewL( + const TDesC& aResourceFile, + TInt aNoteResourceId, + TInt aPriority, + TInt aSoftkeys, + CAknNoteDialog::TTone aTone, + TVwsViewId aViewId, + TUid aCustomMessageId, + TInt aAcceptKeyId, + const TDesC8& aViewActivationMsg ); + + /** + * Destructor. + */ + IMPORT_C ~CAknSoftNotificationParameters(); + + /** + * Sets the texts to be used when the soft notification is displayed in grouped form. + * Calling this method with non-null parameter also indicates that the soft notification + * supports grouped form. + * + * @param aGroupedTextsID Resource identifier pointing to AVKON_GROUPED_NOTE_TEXTS resource. + * The resource can have singular and plural labels. See avkon.rh for + * details. + */ + inline void SetGroupedTexts( TInt aGroupedTextsID ) + {iGroupedTextResourceId = aGroupedTextsID;} + + /** + * Legacy support. Sets the plural view ID. + * + * @param aViewId Plural view ID. + */ + inline void SetPluralViewId( const TVwsViewId& aViewId ) + {iPluralViewId = aViewId;} + +protected: + CAknSoftNotificationParameters(){} + +protected: // data + HBufC* iResourceFile; + TInt iNoteResourceId; // must point to resource of type AVKON_NOTE + TInt iPriority; + TInt iSoftkeys; + CAknNoteDialog::TTone iTone; + + // view activation related parameters + TVwsViewId iViewId; + TUid iCustomMessageId; + TInt iAcceptSoftKey; + HBufC8* iViewActivationMsg; // owned + +public: // friend classes + friend class CAknSoftNotificationSubject; + friend class CAknSoftNotifier; + +protected: // new data + TVwsViewId iPluralViewId; + TInt iGroupedTextResourceId; + }; + +#endif // AKN_SOFT_NOTIFICATION_PARAMETERS