Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

24 lines
1.0 KiB

  1. #ifndef _enumuicommand_h_
  2. #define _enumuicommand_h_
  3. // a helper class for defview and task implementations
  4. class CWVTASKITEM
  5. {
  6. public:
  7. HRESULT get_Name(const WVTASKITEM* pTask, IShellItemArray *psiItemArray, LPWSTR *ppszName);
  8. HRESULT get_Icon(const WVTASKITEM* pTask, IShellItemArray *psiItemArray, LPWSTR *ppszIcon);
  9. HRESULT get_Tooltip(const WVTASKITEM* pTask, IShellItemArray *psiItemArray, LPWSTR *ppszInfotip);
  10. HRESULT get_CanonicalName(const WVTASKITEM* pTask, GUID* pguidCommandName);
  11. HRESULT get_State(const WVTASKITEM* pTask, IUnknown* pv, IShellItemArray *psiItemArray, BOOL fOkToBeSlow, UISTATE* puisState);
  12. HRESULT Invoke(const WVTASKITEM* pTask, IUnknown* pv, IShellItemArray *psiItemArray, IBindCtx *pbc);
  13. CWVTASKITEM() {};
  14. virtual ~CWVTASKITEM() {};
  15. private:
  16. HRESULT _get_String(const WVTASKITEM* pTask, DWORD dwIndex, LPWSTR* ppsz, DWORD cchMin, BOOL bIsIcon);
  17. DWORD _GetSelectionState(const WVTASKITEM* pTask,IShellItemArray *psiItemArray);
  18. };
  19. #endif // _enumuicommand_h_