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.

53 lines
2.3 KiB

  1. //---------------------------------------------------------------------------
  2. // Wrapper.h - wrappers for internal-only API's (not private)
  3. // - public and private API's in uxtheme.h, uxthemep.h
  4. //---------------------------------------------------------------------------
  5. #ifndef _WRAPPER_H
  6. #define _WRAPPER_H
  7. //---------------------------------------------------------------------------
  8. #include "parser.h"
  9. //---------------------------------------------------------------------------
  10. //---- bits used in dwFlags of DTTOPTS ----
  11. #define DTT_TEXTCOLOR (1 << 0) // crText has been specified
  12. #define DTT_BORDERCOLOR (1 << 1) // crBorder has been specified
  13. #define DTT_SHADOWCOLOR (1 << 2) // crShadow has been specified
  14. #define DTT_SHADOWTYPE (1 << 3) // iTextShadowType has been specified
  15. #define DTT_SHADOWOFFSET (1 << 4) // ptShadowOffset has been specified
  16. #define DTT_BORDERSIZE (1 << 5) // iBorderSize has been specified
  17. //------------------------------------------------------------------------
  18. typedef struct _DTTOPTS
  19. {
  20. DWORD dwSize; // size of the struct
  21. DWORD dwFlags; // which options have been specified
  22. COLORREF crText; // color to use for text fill
  23. COLORREF crBorder; // color to use for text outline
  24. COLORREF crShadow; // color to use for text shadow
  25. int eTextShadowType; // TST_SINGLE or TST_CONTINUOUS
  26. POINT ptShadowOffset; // where shadow is drawn (relative to text)
  27. int iBorderSize; // border around text
  28. }
  29. DTTOPTS, *PDTTOPTS;
  30. //------------------------------------------------------------------------
  31. THEMEAPI GetThemeBitmap(HTHEME hTheme, HDC hdc, int iPartId, int iStateId,
  32. const RECT *prc, OUT HBITMAP *phBitmap);
  33. THEMEAPI_(HTHEME) OpenNcThemeData(HWND hwnd, LPCWSTR pszClassIdList);
  34. THEMEAPI DrawThemeTextEx(HTHEME hTheme, HDC hdc, int iPartId,
  35. int iStateId, LPCWSTR pszText, int iCharCount, DWORD dwTextFlags,
  36. const RECT *pRect, OPTIONAL const DTTOPTS *pOptions);
  37. THEMEAPI_(HTHEME) OpenThemeDataFromFile(HTHEMEFILE hLoadedThemeFile,
  38. OPTIONAL HWND hwnd, OPTIONAL LPCWSTR pszClassList, BOOL fClient);
  39. THEMEAPI ClearTheme (HANDLE hSection, BOOL fForce = FALSE);
  40. //---------------------------------------------------------------------------
  41. #endif // _WRAPPER_H
  42. //---------------------------------------------------------------------------