Refresh.h
上传用户:yatsl7111
上传日期:2007-01-08
资源大小:1433k
文件大小:2k
源码类别:

图形图象

开发平台:

Visual C++

  1. //*******************************************************************************
  2. // COPYRIGHT NOTES
  3. // ---------------
  4. // You may use this source code, compile or redistribute it as part of your application 
  5. // for free. You cannot redistribute it as a part of a software development 
  6. // library without the agreement of the author. If the sources are 
  7. // distributed along with the application, you should leave the original 
  8. // copyright notes in the source code without any changes.
  9. // This code can be used WITHOUT ANY WARRANTIES at your own risk.
  10. // 
  11. // For the latest updates to this code, check this site:
  12. // http://www.masmex.com 
  13. // after Sept 2000
  14. // 
  15. // Copyright(C) 2000 Philip Oldaker <email: philip@masmex.com>
  16. //*******************************************************************************
  17. #ifndef __REFRESH_H__
  18. #define __REFRESH_H__
  19. #include "..\IRWEngine\IRWEngine.h"
  20. #include "UIFolderRefresh.h"
  21. // SHELL ITEM DATA STRUCTURES
  22. // List Control
  23. typedef struct tagLVID
  24. {
  25.    LPSHELLFOLDER lpsfParent;
  26.    LPITEMIDLIST  lpi;
  27.    LPITEMIDLIST  lpifq;
  28.    ULONG         ulAttribs;
  29.    LPARAM  lParam;
  30.    //we use these -- ygcl
  31.    COLORREF  rgbColor;
  32.    CReturnReceipt * pRReceipt;
  33.    int  iFlag; // =0 未作判断;=1 支持的图像文件;=2 不支持的图像文件
  34. } LVITEMDATA, *LPLVITEMDATA;
  35. // Tree Control
  36. typedef struct tagTVID
  37. {
  38.    LPSHELLFOLDER lpsfParent;
  39.    LPITEMIDLIST  lpi;
  40.    LPITEMIDLIST  lpifq;
  41.    LPARAM  lParam;
  42. } TVITEMDATA, *LPTVITEMDATA;
  43. #include <vector>
  44. using namespace std;
  45. typedef vector<LPTVITEMDATA> vecItemData;
  46. class CRefreshIEFolder : public CRefresh
  47. {
  48. private:
  49. CRefreshIEFolder(const CRefreshIEFolder &rRefresh);
  50. CRefreshIEFolder &operator=(const CRefreshIEFolder &rRefresh);
  51. public:
  52. CRefreshIEFolder(HTREEITEM hItem,LPARAM lParam) : CRefresh(hItem,lParam) {}
  53. LPTVITEMDATA GetItemData() const { return (LPTVITEMDATA)GetExtData(); }
  54. };
  55. class CRefreshShellFolder : public CRefresh
  56. {
  57. private:
  58. CRefreshShellFolder(const CRefreshShellFolder &rRefresh);
  59. CRefreshShellFolder &operator=(const CRefreshShellFolder &rRefresh);
  60. public:
  61. CRefreshShellFolder(HTREEITEM hItem,LPARAM lParam) : CRefresh(hItem,lParam) {}
  62. LPTVITEMDATA GetItemData() const { return (LPTVITEMDATA)GetExtData(); }
  63. };
  64. #endif //__REFRESH_H__