diff -r d620048b4810 -r dcf0eedfc1a3 emailuis/emailui/inc/FreestyleMessageHeaderURLEventHandler.h --- a/emailuis/emailui/inc/FreestyleMessageHeaderURLEventHandler.h Thu Jul 15 18:19:25 2010 +0300 +++ b/emailuis/emailui/inc/FreestyleMessageHeaderURLEventHandler.h Thu Aug 19 09:38:05 2010 +0300 @@ -70,10 +70,13 @@ private: const TAttachmentData& FindAttachmentL( const CFreestyleMessageHeaderURL& aAttachmentUrl ); void LaunchAttachmentMenuL( const TAttachmentData& aAttachment ); + TBool LaunchAttachmentMenuHWKeyL( const TAttachmentData& aAttachment ); void HandAttachmentActionMenuCommandL( TActionMenuCustomItemId aSelectedActionMenuItem, const TAttachmentData& aAttachment ); void LaunchEmailAddressMenuL( ); + TBool LaunchEmailAddressMenuHWKeyL(); void LaunchWebAddressMenuL( ); + TBool LaunchWebAddressMenuHWKeyL( ); private: CFreestyleMessageHeaderURL* iMessageHeaderURL; @@ -90,4 +93,49 @@ CFSHtmlReloadAO* iHTMLReloadAO; }; + +/****************************************************************************** + * class TPopupMenuItem + ******************************************************************************/ + +NONSHARABLE_CLASS (TPopupMenuItem) + { +public: + TInt iCommandId; + TBuf iText; + TBool iDimmed; + TInt iListIndex; + }; + + +/****************************************************************************** + * class CFreestylePopupMenu + ******************************************************************************/ + +NONSHARABLE_CLASS (CFreestylePopupMenu) : public CBase + { +public: + static CFreestylePopupMenu* NewL( TInt aResourceId ); + ~CFreestylePopupMenu(); + +private: + CFreestylePopupMenu( TInt aResourceId ); + void ConstructL(); + +public: + TInt LaunchPopupMenuL(); // returns command id or KErrCancel + void SetDimmed( TInt aCommandId, TBool aDimmed ); + +private: + TInt CommandIdFromListIndex( TInt aListIndex ); + void ConstructFromResourceL( TResourceReader& aReader ); + void StrCopy( TDes& aTarget, const TDesC& aSource ); + +private: + TInt iResourceId; + + RArray iItemList; + }; + + #endif //__CFREESTYLE_MESSAGE_HEADER_EVENTHANDLER_URL_H__