chxavfolderpopuplist.h
上传用户:dangjiwu
上传日期:2013-07-19
资源大小:42019k
文件大小:2k
源码类别:
Symbian
开发平台:
Visual C++
- /************************************************************************
- * chxavfolderpopuplist.h
- * ----------------------
- *
- * Synopsis:
- *
- * (c) 1995-2003 RealNetworks, Inc. Patents pending. All rights reserved.
- *
- ************************************************************************/
- #ifndef _chxavfolderpopuplist_h_
- #define _chxavfolderpopuplist_h_
- // Symbian includes...
- #include <aknpopup.h>
- // Include from this project...
- #include "chxavfileviewpageinfo.h"
- #include "chxavvector.h"
- #include "chxavcallback.h"
- #include "chxavrefptr.h"
- // class CHXAvFolderPopupList
- class CHXAvFolderPopupList
- : public CAknPopupList
- {
- public:
- CHXAvFolderPopupList(TInt& idxSelected, TInt& idExitCmd);
- virtual ~CHXAvFolderPopupList();
- void ConstructL(TInt resIdPrompt,
- TInt resIdSelectButtonText,
- const CDesCArrayFlat* pFolders,
- const TDesC* pCurrentPath,
- TInt idxCurrentItem = 0);
- void ConstructL(TInt resIdPrompt, TInt resIdSelectButtonText,
- const CHXAvVector<CHXAvMediaFolderInfoPtr>& mediaFolderInfo,
- const TDesC* pCurrentPath,
- TInt idxCurrentItem = 0);
- protected:
- // implementation
- void DoBeginConstructL(TInt resIdPrompt, TInt resIdCba, TInt resIdSelectButtonText, const TDesC* pCurrentPath);
- void SetFolderListItemsL(const CDesCArrayFlat* pFolders);
- void SetRootFolderListItemsL(const CHXAvVector<CHXAvMediaFolderInfoPtr>& mediaFolderInfo);
- void CreateAndSetFolderIconsL();
- void CreateAndSetRootIconsL();
- void ForwardCommandL(TInt idCommand);
- bool FolderHasChildren(TInt idxFolder);
- // CAknPopupList
- virtual void AttemptExitL(TBool aAccept);
- // MEikListBoxObserver
- void HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent aEventType);
- protected:
- refptr<CAknSingleGraphicPopupMenuStyleListBox> m_spListBox;
- TInt& m_idxSelected;
- TInt& m_idExitCmd;
- refptr<CHXAvCallback> m_spSelectButton;
- const TDesC* m_wpBasePath;
- const CDesCArrayFlat* m_wpFolders;
- };
- #endif // _chxavfolderpopuplist_h_