aknmessagequerydialog.h

Go to the documentation of this file.
00001 /*
00002 * ============================================================================
00003 *  Name     : aknmessagequerydialog.h
00004 *  Part of  : AVKON
00005 *
00006 *  Description:
00007 * 
00008 *  Version  : %version: e003sa01#17 %
00009 *
00010 *  Copyright © 2002 - 2006 Nokia Corporation.
00011 *  This material, including documentation and any related 
00012 *  computer programs, is protected by copyright controlled by 
00013 *  Nokia Corporation. All rights are reserved. Copying, 
00014 *  including reproducing, storing,  adapting or translating, any 
00015 *  or all of this material requires the prior written consent of 
00016 *  Nokia Corporation. This material also contains confidential 
00017 *  information which may not be disclosed to others without the 
00018 *  prior written consent of Nokia Corporation.
00019 * ============================================================================
00020 */
00021 
00022 #if !defined(__AKNMESSAGEQUERYDIALOG_H__)
00023 #define __AKNMESSAGEQUERYDIALOG_H__
00024 
00025 #include <aknquerydialog.h>
00026 class CEikImage;
00027 class CAknMessageQueryDialogExtension;
00028 
00029 _LIT( KOpeningLinkTag, "<AknMessageQuery Link>" );
00030 _LIT( KClosingLinkTag, "</AknMessageQuery Link>" );
00031 _LIT( KOpeningBoldTag, "<AknMessageQuery Bold>" );
00032 _LIT( KClosingBoldTag, "</AknMessageQuery Bold>" );
00033 
00034 
00045 class CAknMessageQueryDialog : public CAknQueryDialog
00046     {
00047 
00048 public:
00049 
00056     IMPORT_C static CAknMessageQueryDialog* NewL(TDesC& aMessage, 
00057                                         const TTone& aTone = ENoTone);
00058 
00062     IMPORT_C ~CAknMessageQueryDialog();
00063 
00069     IMPORT_C CAknMessageQueryDialog(const TTone aTone);
00070 
00071 public:
00072 
00081     IMPORT_C void SetMessageTextL(const TDesC& aMessage);
00082 
00089     IMPORT_C void SetHeaderTextL(const TDesC& aHeader);  
00090 
00108     IMPORT_C void SetLinkTextL(const TDesC& aLinkText);
00109 
00118     IMPORT_C void SetLink(TCallBack& aCallBack);
00119 
00120 public: // from CCoeControl
00121 
00140     IMPORT_C TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, 
00141                                          TEventCode);
00142 
00150     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent); 
00151 
00152 protected: // from CEikDialog
00153 
00164     IMPORT_C virtual void PreLayoutDynInitL();
00165     
00175     IMPORT_C virtual void SetSizeAndPosition(const TSize& aSize);
00176     
00182     IMPORT_C virtual void PostLayoutDynInitL();
00183 
00184 private:
00185 
00191     void CreateExtensionL();
00192 
00200     void RegisterPointerEventObserver( TBool aRegister ); 
00201     
00206     TInt CountLinks() const;         
00207     TBool SetNextLinkTextLocationL(const TDesC* aLinkText);     // for the non-marked links
00208     
00209     void ParseMessageTxtL();
00210     TBool GetNextTagL(TMsgQueryTag& aTag);
00211     void SetMsgFormattingL(TMsgQueryTag aTag);
00212     TBool TaggedMessageL();
00213     TInt LinksInArray();
00214     TInt LastLinkInArray();
00215       
00216 private:
00220     IMPORT_C void* ExtensionInterface( TUid aInterface );
00221 private: 
00222     IMPORT_C virtual void CEikDialog_Reserved_1();
00223     IMPORT_C virtual void CEikDialog_Reserved_2();  
00224 private: 
00225     IMPORT_C virtual void CAknDialog_Reserved();
00226 private:
00227     IMPORT_C virtual void CAknQueryDialog_Reserved();
00228 private:
00229     TDesC* iMessage;
00230     TDesC* iHeader;
00231     CEikImage* iHeaderImage;
00232     // Moved to iMsgQueryExtension
00233     // TInt iAnimationId;
00234     CAknMessageQueryDialogExtension * iMsgQueryExtension;
00235     
00236 
00237 public:
00238 
00249     IMPORT_C virtual void ProcessCommandL( TInt aCommandId );
00250     
00258     void CheckLinkTappedL( TAny* aParams ); 
00259 
00260 
00261 public:
00262 
00270     IMPORT_C CAknMessageQueryDialog(TDesC* aMessage, TDesC* aHeader); 
00271 
00280     IMPORT_C CAknMessageQueryDialog(TDesC* aMessage, 
00281                                     TDesC* aHeader, 
00282                                     CEikImage *aHeaderImage); 
00283 
00292     IMPORT_C CAknMessageQueryDialog(TDesC* aMessage, 
00293                                     TDesC* aHeader, 
00294                                     const TTone aTone); 
00295 
00305     IMPORT_C CAknMessageQueryDialog(TDesC* aMessage, 
00306                                     TDesC* aHeader, 
00307                                     CEikImage *aHeaderImage, 
00308                                     const TTone aTone); 
00309     
00316     IMPORT_C void SetMessageText(TDesC* aMessage); 
00317     
00324     IMPORT_C void SetMessageText(const TDesC& aMessage);
00325 
00332     IMPORT_C void SetHeaderText(TDesC* aHeader);  
00333 
00340     IMPORT_C void SetHeaderText(const TDesC& aHeader);  
00341 
00347     IMPORT_C CAknMessageQueryDialog();
00348         
00349     };
00350 
00351 
00352 // __AKNMESSAGEQUERYDIALOG_H__
00353 #endif
00354 
00355 //  End of File

Copyright © Nokia Corporation 2001-2008
Back to top