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.

41 lines
1.9 KiB

  1. //---------------------------------------------------------------------------
  2. // Info.h - implements the information services of the CRenderObj object
  3. //---------------------------------------------------------------------------
  4. #ifndef _INFO_H
  5. #define _INFO_H
  6. #include <loader.h>
  7. //---------------------------------------------------------------------------
  8. class CRenderObj; // forward
  9. //---------------------------------------------------------------------------
  10. HRESULT GetHwndThemeFile(HWND hwnd, LPCWSTR pszClassIdList,
  11. CUxThemeFile **ppThemeFile);
  12. HRESULT MatchThemeClass(LPCTSTR pszAppName, LPCTSTR pszClassId,
  13. CUxThemeFile *pThemeFile, int *piOffset, int *piClassNameOffset);
  14. HRESULT MatchThemeClassList(HWND hwnd, LPCTSTR pstClassIdList,
  15. CUxThemeFile *pThemeFile, int *piOffset, int *piClassNameOffset);
  16. HTHEME _OpenThemeDataFromFile(HTHEMEFILE hLoadedThemeFile, HWND hwnd, LPCWSTR pszClassList, DWORD dwFlags);
  17. HTHEME _OpenThemeData(HWND hwnd, LPCWSTR pszClassIdList, DWORD dwFlags);
  18. HRESULT _ApplyTheme(CUxThemeFile *pThemeFile, DWORD dwApplyFlags,
  19. OPTIONAL LPCWSTR pszTargetApp, OPTIONAL HWND hwndTarget);
  20. HRESULT _OpenThemeFileFromData(CRenderObj *pRender, HTHEMEFILE *phThemeFile);
  21. void ClearExStyleBits(HWND hwnd);
  22. void AddPropFlags(HWND hwnd, DWORD dwNewFlags);
  23. //---------------------------------------------------------------------------
  24. BOOL EnumProcessWindows(WNDENUMPROC lpEnumFunc, LPARAM lParam);
  25. void WindowDump(LPCWSTR pszWhere);
  26. //---------------------------------------------------------------------------
  27. inline THEMEMETRICS *GetThemeMetricsPtr(CUxThemeFile *pThemeFile)
  28. {
  29. THEMEHDR *hdr = (THEMEHDR *)(pThemeFile->_pbThemeData);
  30. return (THEMEMETRICS *)(pThemeFile->_pbThemeData + hdr->iSysMetricsOffset + ENTRYHDR_SIZE);
  31. }
  32. //---------------------------------------------------------------------------
  33. #endif // _INFO_H
  34. //---------------------------------------------------------------------------