home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / uxtheme.h < prev    next >
C/C++ Source or Header  |  2005-01-29  |  5KB  |  123 lines

  1. #ifndef _UXTHEME_H
  2. #define _UXTHEME_H
  3. #if __GNUC__ >= 3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #include <commctrl.h>
  8.  
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12.  
  13. #if (_WIN32_WINNT >= 0x0501)
  14. #define DTBG_CLIPRECT 0x00000001
  15. #define DTBG_DRAWSOLID 0x00000002
  16. #define DTBG_OMITBORDER 0x00000004
  17. #define DTBG_OMITCONTENT 0x00000008
  18. #define DTBG_COMPUTINGREGION 0x00000010
  19. #define DTBG_MIRRORDC 0x00000020
  20. #define DTT_GRAYED 0x00000001
  21. #define ETDT_DISABLE 0x00000001
  22. #define ETDT_ENABLE 0x00000002
  23. #define ETDT_USETABTEXTURE 0x00000004
  24. #define ETDT_ENABLETAB (ETDT_ENABLE|ETDT_USETABTEXTURE)
  25. #define STAP_ALLOW_NONCLIENT 0x00000001
  26. #define STAP_ALLOW_CONTROLS 0x00000002
  27. #define STAP_ALLOW_WEBCONTENT 0x00000004
  28. #define HTTB_BACKGROUNDSEG 0x0000  
  29. #define HTTB_FIXEDBORDER 0x0002
  30. #define HTTB_CAPTION 0x0004
  31. #define HTTB_RESIZINGBORDER_LEFT 0x0010
  32. #define HTTB_RESIZINGBORDER_TOP 0x0020
  33. #define HTTB_RESIZINGBORDER_RIGHT 0x0040
  34. #define HTTB_RESIZINGBORDER_BOTTOM 0x0080
  35. #define HTTB_RESIZINGBORDER (HTTB_RESIZINGBORDER_LEFT|HTTB_RESIZINGBORDER_TOP|HTTB_RESIZINGBORDER_RIGHT|HTTB_RESIZINGBORDER_BOTTOM)
  36. #define HTTB_SIZINGTEMPLATE 0x0100
  37. #define HTTB_SYSTEMSIZINGMARGINS 0x0200
  38.  
  39. typedef enum PROPERTYORIGIN {
  40.     PO_STATE = 0,
  41.     PO_PART = 1,
  42.     PO_CLASS = 2,
  43.     PO_GLOBAL = 3,
  44.     PO_NOTFOUND = 4
  45. } PROPERTYORIGIN;
  46. typedef enum THEMESIZE {
  47.     TS_MIN,
  48.     TS_TRUE,
  49.     TS_DRAW
  50. } THEME_SIZE;
  51. typedef struct _DTBGOPTS {
  52.     DWORD dwSize;
  53.     DWORD dwFlags;
  54.     RECT rcClip;
  55. } DTBGOPTS, *PDTBGOPTS;
  56. #define MAX_INTLIST_COUNT 10
  57. typedef struct _INTLIST {
  58.     int iValueCount;
  59.     int iValues[MAX_INTLIST_COUNT];
  60. } INTLIST, *PINTLIST;
  61. typedef struct _MARGINS {
  62.     int cxLeftWidth;
  63.     int cxRightWidth;
  64.     int cyTopHeight;
  65.     int cyBottomHeight;
  66. } MARGINS, *PMARGINS;
  67. typedef HANDLE HTHEME;
  68.  
  69. HRESULT WINAPI CloseThemeData(HTHEME);
  70. HRESULT WINAPI DrawThemeBackground(HTHEME,HDC,int,int,const RECT*,const RECT*);
  71. HRESULT WINAPI DrawThemeBackgroundEx(HTHEME,HDC,int,int,const RECT*,const DTBGOPTS*);
  72. HRESULT WINAPI DrawThemeEdge(HTHEME,HDC,int,int,const RECT*,UINT,UINT,RECT*);
  73. HRESULT WINAPI DrawThemeIcon(HTHEME,HDC,int,int,const RECT*,HIMAGELIST,int);
  74. HRESULT WINAPI DrawThemeParentBackground(HWND,HDC,RECT*);
  75. HRESULT WINAPI DrawThemeText(HTHEME,HDC,int,int,LPCWSTR,int,DWORD,DWORD,const RECT*);
  76. HRESULT WINAPI EnableThemeDialogTexture(HWND,DWORD);
  77. HRESULT WINAPI EnableTheming(BOOL);
  78. HRESULT WINAPI GetCurrentThemeName(LPWSTR,int,LPWSTR,int,LPWSTR,int);
  79. DWORD WINAPI GetThemeAppProperties();
  80. HRESULT WINAPI GetThemeBackgroundContentRect(HTHEME,HDC,int,int,const RECT*,RECT*);
  81. HRESULT WINAPI GetThemeBackgroundExtent(HTHEME,HDC,int,int,const RECT*,RECT*);
  82. HRESULT WINAPI GetThemeBackgroundRegion(HTHEME,HDC,int,int,const RECT*,HRGN*);
  83. HRESULT WINAPI GetThemeBool(HTHEME,int,int,int,BOOL*);
  84. HRESULT WINAPI GetThemeColor(HTHEME,int,int,int,COLORREF*);
  85. HRESULT WINAPI GetThemeDocumentationProperty(LPCWSTR,LPCWSTR,LPWSTR,int);
  86. HRESULT WINAPI GetThemeEnumValue(HTHEME,int,int,int,int*);
  87. HRESULT WINAPI GetThemeFilename(HTHEME,int,int,int,LPWSTR,int);
  88. HRESULT WINAPI GetThemeFont(HTHEME,HDC,int,int,int,LOGFONT*);
  89. HRESULT WINAPI GetThemeInt(HTHEME,int,int,int,int*);
  90. HRESULT WINAPI GetThemeIntList(HTHEME,int,int,int,INTLIST*);
  91. HRESULT WINAPI GetThemeMargins(HTHEME,HDC,int,int,int,RECT*,MARGINS*);
  92. HRESULT WINAPI GetThemeMetric(HTHEME,HDC,int,int,int,int*);
  93. HRESULT WINAPI GetThemePartSize(HTHEME,HDC,int,int,RECT*,THEME_SIZE,SIZE*);
  94. HRESULT WINAPI GetThemePosition(HTHEME,int,int,int,POINT*);
  95. HRESULT WINAPI GetThemePropertyOrigin(HTHEME,int,int,int,PROPERTYORIGIN*);
  96. HRESULT WINAPI GetThemeRect(HTHEME,int,int,int,RECT*);
  97. HRESULT WINAPI GetThemeString(HTHEME,int,int,int,LPWSTR,int);
  98. BOOL WINAPI GetThemeSysBool(HTHEME,int);
  99. COLORREF WINAPI GetThemeSysColor(HTHEME,int);
  100. HBRUSH WINAPI GetThemeSysColorBrush(HTHEME,int);
  101. HRESULT WINAPI GetThemeSysFont(HTHEME,int,LOGFONT*);
  102. HRESULT WINAPI GetThemeSysInt(HTHEME,int,int*);
  103. int WINAPI GetThemeSysSize(HTHEME,int);
  104. HRESULT WINAPI GetThemeSysString(HTHEME,int,LPWSTR,int);
  105. HRESULT WINAPI GetThemeTextExtent(HTHEME,HDC,int,int,LPCWSTR,int,DWORD,const RECT*,RECT*);
  106. HRESULT WINAPI GetThemeTextMetrics(HTHEME,HDC,int,int,TEXTMETRIC*);
  107. HTHEME WINAPI GetWindowTheme(HWND);
  108. HRESULT WINAPI HitTestThemeBackground(HTHEME,HDC,int,int,DWORD,const RECT*,HRGN,POINT,WORD*);
  109. BOOL WINAPI IsAppThemed();
  110. BOOL WINAPI IsThemeActive();
  111. BOOL WINAPI IsThemeBackgroundPartiallyTransparent(HTHEME,int,int);
  112. BOOL WINAPI IsThemeDialogTextureEnabled(HWND);
  113. BOOL WINAPI IsThemePartDefined(HTHEME,int,int);
  114. HTHEME WINAPI OpenThemeData(HWND,LPCWSTR);
  115. void WINAPI SetThemeAppProperties(DWORD);
  116. HRESULT WINAPI SetWindowTheme(HWND,LPCWSTR,LPCWSTR);
  117. #endif
  118.  
  119. #ifdef __cplusplus
  120. }
  121. #endif
  122. #endif
  123.