00001
00002
00003
00004
00005
00006 #if !defined(AFX_HFE_FILELIST_H__716594B1_1516_4417_982C_DB67037D89C8__INCLUDED_)
00007 #define AFX_HFE_FILELIST_H__716594B1_1516_4417_982C_DB67037D89C8__INCLUDED_
00008
00009 #if _MSC_VER > 1000
00010 #pragma once
00011 #endif
00012
00013 #include "ListCtrlEx.h"
00014 #include "fsTree.h"
00015 #include "fsODMenu.h"
00016
00017 class CHFE_FileList : public CListCtrlEx
00018 {
00019 friend class CHFEWnd;
00020 friend class CCreateDownloadsDlg;
00021
00022 public:
00023 CHFE_FileList();
00024
00025 public:
00026
00027 public:
00028
00029
00030
00031
00032 public:
00033
00034 void ApplyLanguage();
00035 void ApplyLanguageToMenu (CMenu* menu);
00036
00037 int OnUpdateToolBar (UINT nID);
00038
00039 void UpdateList();
00040 BOOL Create (CWnd* pParent);
00041 virtual ~CHFE_FileList();
00042
00043 protected:
00044
00045 void OnForceUpdate();
00046
00047 void CalcCoordsForCurSel();
00048 fsODMenu m_odmenu;
00049
00050 fs::tree <fsFileInfo*>* m_pList;
00051
00052 static DWORD WINAPI _threadBuildList (LPVOID lp);
00053 BOOL m_bDontUpdateList;
00054
00055 static fs::tree <fsFileInfo*>* BuildList (LPCSTR pszFolder, BOOL *pbNeedStop, int* piProgress, int iProgressDone);
00056
00057 void DownloadSelected();
00058 fs::tree* m_pDldList;
00059 void OnKeyDown (WORD wVK);
00060
00061 BOOL Open1SelectedItem();
00062
00063 static int CALLBACK _SortFunc (LPARAM item1, LPARAM item2, LPARAM lParam);
00064 void UpdateMenu (CMenu *pMenu);
00065 void OnRClick();
00066 CPoint m_rbPt;
00067
00068 int GetFileImage (fsFileInfo* file);
00069 CImageList m_images, m_selImages;
00070
00071 afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
00072 afx_msg void OnHfeDownload();
00073 afx_msg void OnHfeGo();
00074 afx_msg void OnHfeRefresh();
00075 afx_msg void OnHfeSettings();
00076 afx_msg void OnHfeStop();
00077 afx_msg void OnHfeOpenfolder();
00078 afx_msg void OnHfeParentfolder();
00079 afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
00080 afx_msg void OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct);
00081 afx_msg void OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct);
00082 afx_msg void OnHfeDisconnect();
00083
00084
00085 DECLARE_MESSAGE_MAP()
00086 };
00087
00088
00089
00090 #endif