dpastuff.h
Upload User: xhy777
Upload Date: 2007-02-14
Package Size: 24088k
Code Size: 2k
Category:

Windows Kernel

Development Platform:

Visual C++

  1. #ifndef DPASTUFF_H_
  2. #define DPASTUFF_H_
  3. typedef struct
  4. {
  5.     DWORD           dwSortBy;           // the sort by flag.
  6.     IShellFolder    *psf;               // shell folder to be ordered.
  7.     // Caller of OrderList_Merge does *not* fill in this field.
  8.     // This field is used internally by OrderList_Merge.
  9.     IShellFolder2   *psf2;              // IShellFolder2 version of psf
  10.     LPARAM          lParam;             // Other user data...
  11. } ORDERINFO, * PORDERINFO;
  12. // see shellp.h for ORDERITEM definition
  13. typedef void (*LPFNORDERMERGENOMATCH)(LPVOID pvParam, LPCITEMIDLIST pidl);
  14. int CALLBACK OrderItem_Compare(LPVOID pv1, LPVOID pv2, LPARAM lParam);
  15. LPVOID CALLBACK OrderItem_Merge(UINT uMsg, LPVOID pvDest, LPVOID pvSrc, LPARAM lParam);
  16. void OrderList_Merge(HDPA hdpaNew, HDPA hdpaOld, int iInsertPos, LPARAM lParam, 
  17.                      LPFNORDERMERGENOMATCH pfn, LPVOID pvParam);
  18. void OrderList_Reorder(HDPA hdpa);
  19. HDPA OrderList_Clone(HDPA hdpa);
  20. PORDERITEM OrderItem_Create(LPITEMIDLIST pidl, int nOrder);
  21. void OrderList_Destroy(HDPA *hdpa, BOOL fKillPidls = TRUE);
  22. int OrderItem_GetSystemImageListIndex(PORDERITEM poi, IShellFolder *psf, BOOL fUseCache);
  23. DWORD OrderItem_GetFlags(PORDERITEM poi);
  24. void OrderItem_SetFlags(PORDERITEM poi, DWORD dwFlags);
  25. HRESULT OrderList_SaveToStream(IStream* pstm, HDPA hdpa, IShellFolder * psf);
  26. HRESULT OrderList_LoadFromStream(IStream* pstm, HDPA * phdpa, IShellFolder * psfParent);
  27. void OrderItem_Free(PORDERITEM poi, BOOL fKillPidls = TRUE);
  28. BOOL OrderList_Append(HDPA hdpa, LPITEMIDLIST pidl, int nOrder);
  29. HRESULT COrderList_GetOrderList(HDPA * phdpa, LPCITEMIDLIST pidl, IShellFolder * psf);
  30. HRESULT COrderList_SetOrderList(HDPA hdpa, LPCITEMIDLIST pidl, IShellFolder *psf);
  31. #endif