This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/WATCOM/h/nt/uxtheme.h

369 lines
13 KiB
C
Raw Normal View History

/*
* uxtheme.h Theme Manager functions
*
* =========================================================================
*
* Open Watcom Project
*
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
*
* This file is automatically generated. Do not edit directly.
*
* =========================================================================
*/
#ifndef _UXTHEME_H_
#define _UXTHEME_H_
#ifndef _ENABLE_AUTODEPEND
#pragma read_only_file;
#endif
#include <commctrl.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Macros to specify theme functions */
#define THEMEAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE
#define THEMEAPI_( x ) EXTERN_C DECLSPEC_IMPORT x STDAPICALLTYPE
/* Theme primitive data types */
typedef HANDLE HTHEME;
#if (_WIN32_WINNT >= 0x0600)
typedef HANDLE HPAINTBUFFER;
typedef HANDLE HANIMATIONBUFFER;
#endif
/* Maximum string lengths */
#if (_WIN32_WINNT >= 0x0600)
#define MAX_THEMECOLOR 64
#define MAX_THEMESIZE 64
#endif
/* OpenThemeDataEx() flags */
#define OTD_FORCE_RECT_SIZING 0x00000001L
#define OTD_NONCLIENT 0x00000002L
#define OTD_VALIDBITS \
(OTD_FORCE_RECT_SIZING | OTD_NONCLIENT)
/* DrawThemeBackgroundEx() flags */
#define DTBG_CLIPRECT 0x00000001L
#define DTBG_DRAWSOLID 0x00000002L
#define DTBG_OMITBORDER 0x00000004L
#define DTBG_OMITCONTENT 0x00000008L
#define DTBG_COMPUTINGREGION 0x00000010L
#define DTBG_MIRRORDC 0x00000020L
#define DTBG_NOMIRROR 0x00000040L
#define DTBG_VALIDBITS \
(DTBG_CLIPRECT | DTBG_DRAWSOLID | DTBG_OMITBORDER | DTBG_OMITCONTENT | \
DTBG_COMPUTINGREGION | DTBG_MIRRORDC | DTBG_NOMIRROR)
/* DrawThemeText() flags */
#define DTT_TEXTCOLOR 0x00000001L
#define DTT_BORDERCOLOR 0x00000002L
#define DTT_SHADOWCOLOR 0x00000004L
#define DTT_SHADOWTYPE 0x00000008L
#define DTT_SHADOWOFFSET 0x00000010L
#define DTT_BORDERSIZE 0x00000020L
#define DTT_FONTPROP 0x00000040L
#define DTT_COLORPROP 0x00000080L
#define DTT_STATEID 0x00000100L
#define DTT_CALCRECT 0x00000200L
#define DTT_APPLYOVERLAY 0x00000400L
#define DTT_GLOWSIZE 0x00000800L
#define DTT_CALLBACK 0x00001000L
#define DTT_COMPOSITED 0x00002000L
#define DTT_VALIDBITS \
(DTT_TEXTCOLOR | DTT_BORDERCOLOR | DTT_SHADOWCOLOR | DTT_SHADOWTYPE | \
DTT_SHADOWOFFSET | DTT_BORDERSIZE | DTT_FONTPROP | DTT_COLORPROP | \
DTT_STATEID | DTT_CALCRECT | DTT_APPLYOVERLAY | DTT_GLOWSIZE | DTT_COMPOSITED)
/* DrawThemeText() secondary flags */
#define DTT_GRAYED 0x00000001L
#define DTT_FLAGS2VALIDBITS DTT_GRAYED
/* HitTestThemeBackground() flags */
#define HTTB_BACKGROUNDSEG 0x00000000L
#define HTTB_FIXEDBORDER 0x00000002L
#define HTTB_CAPTION 0x00000004L
#define HTTB_RESIZINGBORDER_LEFT 0x00000010L
#define HTTB_RESIZINGBORDER_TOP 0x00000020L
#define HTTB_RESIZINGBORDER_RIGHT 0x00000040L
#define HTTB_RESIZINGBORDER_BOTTOM 0x00000080L
#define HTTB_RESIZINGBORDER \
(HTTB_RESIZINGBORDER_LEFT | HTTB_RESIZINGBORDER_TOP | HTTB_RESIZINGBORDER_RIGHT | \
HTTB_RESIZINGBORDER_BOTTOM)
#define HTTB_SIZINGTEMPLATE 0x00000100L
#define HTTB_SYSTEMSIZINGMARGINS 0x00000200L
/* Maximum integer list count */
#if (_WIN32_WINNT >= 0x0600)
#define MAX_INTLIST_COUNT 402
#else
#define MAX_INTLIST_COUNT 10
#endif
/* Window theme attribute option masks */
#if (_WIN32_WINNT >= 0x0600)
#define WTNCA_NODRAWCAPTION 0x00000001L
#define WTNCA_NODRAWICON 0x00000002L
#define WTNCA_NOSYSMENU 0x00000004L
#define WTNCA_NOMIRRORHELP 0x00000008L
#define WTNCA_VALIDBITS \
(WTNCA_NODRAWCAPTION | WTNCA_NODRAWICON | WTNCA_NOSYSMENU | WTNCA_NOMIRRORHELP)
#endif
/* EnableThemeDialogTexture() flags */
#define ETDT_DISABLE 0x00000001L
#define ETDT_ENABLE 0x00000002L
#define ETDT_USETABTEXTURE 0x00000004L
#define ETDT_ENABLETAB (ETDT_ENABLE | ETDT_USETABTEXTURE)
#if (_WIN32_WINNT >= 0x0600)
#define ETDT_USEAEROWIZARDTABTEXTURE 0x00000008L
#define ETDT_ENABLEAEROWIZARDTAB (ETDT_ENABLE | ETDT_USEAEROWIZARDTABTEXTURE)
#define ETDT_VALIDBITS \
(ETDT_DISABLE | ETDT_ENABLE | ETDT_USETABTEXTURE | ETDT_USEAEROWIZARDTABTEXTURE)
#endif
/* SetThemeAppProperties() flags */
#define STAP_ALLOW_NONCLIENT 0x00000001L
#define STAP_ALLOW_CONTROLS 0x00000002L
#define STAP_ALLOW_WEBCONTENT 0x00000004L
#define STAP_VALIDBITS \
(STAP_ALLOW_NONCLIENT | STAP_ALLOW_CONTROLS | STAP_ALLOW_WEBCONTENT)
/* Theme documentation properties */
#define SZ_THDOCPROP_DISPLAYNAME L"DisplayName"
#define SZ_THDOCPROP_CANONICALNAME L"ThemeName"
#define SZ_THDOCPROP_TOOLTIP L"ToolTip"
#define SZ_THDOCPROP_AUTHOR L"author"
/* DrawThemeParentBackground() flags */
#if (_WIN32_WINNT >= 0x0600)
#define DTPB_WINDOWDC 0x00000001L
#define DTPB_USECTLCOLORSTATIC 0x00000002L
#define DTPB_USEERASEBKGND 0x00000004L
#endif
/* GetThemeBitmap() flags */
#define GBF_DIRECT 0x00000001L
#define GBF_COPY 0x00000002L
#define GBF_VALIDBITS (GBF_DIRECT | GBF_COPY)
/* Buffered paint paint flags */
#if (_WIN32_WINNT >= 0x0600)
#define BPPF_ERASE 0x00000001L
#define BPPF_NOCLIP 0x00000002L
#define BPPF_NONCLIENT 0x00000004L
#endif
/* DrawThemeBackgroundEx() options */
typedef struct {
DWORD dwSize;
DWORD dwFlags;
RECT rcClip;
} DTBGOPTS;
typedef DTBGOPTS *PDTBGOPTS;
/* DrawThemeTextEx() callback */
typedef int (WINAPI *DTT_CALLBACK_PROC)( HDC, LPWSTR, int, LPRECT, UINT, LPARAM );
/* DrawThemeTextEx() options */
typedef struct _DTTOPTS {
DWORD dwSize;
DWORD dwFlags;
COLORREF crText;
COLORREF crBorder;
COLORREF crShadow;
int iTextShadowType;
POINT ptShadowOffset;
int iBorderSize;
int iFontPropId;
int iColorPropId;
int iStateId;
BOOL fApplyOverlay;
int iGlowSize;
DTT_CALLBACK_PROC pfnDrawTextCallback;
LPARAM lParam;
} DTTOPTS;
typedef DTTOPTS *PDTTOPTS;
/* Theme sizes */
enum THEMESIZE {
TS_MIN = 0,
TS_TRUE = 1,
TS_DRAW = 2
};
/* Margins */
typedef struct _MARGINS {
int cxLeftWidth;
int cxRightWidth;
int cyTopHeight;
int cyBottomHeight;
} MARGINS;
typedef MARGINS *PMARGINS;
/* Integer list */
typedef struct _INTLIST {
int iValueCount;
int iValues[MAX_INTLIST_COUNT];
} INTLIST;
typedef INTLIST *PINTLIST;
/* Property origin */
enum PROPERTYORIGIN {
PO_STATE = 0,
PO_PART = 1,
PO_CLASS = 2,
PO_GLOBAL = 3,
PO_NOTFOUND = 4
};
/* Window theme attribute types */
#if (_WIN32_WINNT >= 0x0600)
enum WINDOWTHEMEATTRIBUTETYPE {
WTA_NONCLIENT = 1
};
#endif
/* Window theme attribute options */
#if (_WIN32_WINNT >= 0x0600)
typedef struct _WTA_OPTIONS {
DWORD dwFlags;
DWORD dwMask;
} WTA_OPTIONS;
typedef WTA_OPTIONS *PWTA_OPTIONS;
#endif
/* Buffered paint buffer formats */
#if (_WIN32_WINNT >= 0x0600)
typedef enum _BP_BUFFERFORMAT {
BPBF_COMPATIBLEBITMAP = 0,
BPBF_DIB = 1,
BPBF_TOPDOWNDIB = 2,
BPBF_TOPDOWNMONODIB = 3
} BP_BUFFERFORMAT;
#define BPBF_COMPOSITED BPBF_TOPDOWNDIB
#endif
/* Buffered paint animation styles */
#if (_WIN32_WINNT >= 0x0600)
typedef enum _BP_ANIMATIONSTYLE {
BPAS_NONE = 0,
BPAS_LINEAR = 1,
BPAS_CUBIC = 2,
BPAS_SINE = 3
} BP_ANIMATIONSTYLE;
#endif
/* Buffered paint animation parameters */
#if (_WIN32_WINNT >= 0x0600)
typedef struct _BP_ANIMATIONPARAMS {
DWORD cbSize;
DWORD dwFlags;
BP_ANIMATIONSTYLE style;
DWORD dwDuration;
} BP_ANIMATIONPARAMS;
typedef BP_ANIMATIONPARAMS *PBP_ANIMATIONPARAMS;
#endif
/* Buffered paint paint parameters */
#if (_WIN32_WINNT >= 0x0600)
typedef struct _BP_PAINTPARAMS {
DWORD cbSize;
DWORD dwFlags;
const RECT *prcExclude;
const BLENDFUNCTION *pBlendFunction;
} BP_PAINTPARAMS;
typedef BP_PAINTPARAMS *PBP_PAINTPARAMS;
#endif
/* Functions in UXTHEME.DLL */
THEMEAPI CloseThemeData( HTHEME );
THEMEAPI DrawThemeBackground( HTHEME, HDC, int, int, LPCRECT, LPCRECT );
THEMEAPI DrawThemeBackgroundEx( HTHEME, HDC, int, int, LPCRECT, const DTBGOPTS * );
THEMEAPI DrawThemeEdge( HTHEME, HDC, int, int, LPCRECT, UINT, UINT, LPRECT );
THEMEAPI DrawThemeIcon( HTHEME, HDC, int, int, LPCRECT, HIMAGELIST, int );
THEMEAPI DrawThemeParentBackground( HWND, HDC, const RECT * );
THEMEAPI DrawThemeText( HTHEME, HDC, int, int, LPCWSTR, int, DWORD, DWORD, LPCRECT );
THEMEAPI EnableThemeDialogTexture( HWND, DWORD );
THEMEAPI EnableTheming( BOOL );
THEMEAPI GetCurrentThemeName( LPWSTR, int, LPWSTR, int, LPWSTR, int );
THEMEAPI_( DWORD ) GetThemeAppProperties( VOID );
THEMEAPI GetThemeBackgroundContentRect( HTHEME, HDC, int, int, LPCRECT, LPRECT );
THEMEAPI GetThemeBackgroundExtent( HTHEME, HDC, int, int, LPCRECT, LPRECT );
THEMEAPI GetThemeBackgroundRegion( HTHEME, HDC, int, int, LPCRECT, HRGN * );
THEMEAPI GetThemeBool( HTHEME, int, int, int, BOOL * );
THEMEAPI GetThemeColor( HTHEME, int, int, int, COLORREF * );
THEMEAPI GetThemeDocumentationProperty( LPCWSTR, LPCWSTR, LPWSTR, int );
THEMEAPI GetThemeEnumValue( HTHEME, int, int, int, int * );
THEMEAPI GetThemeFilename( HTHEME, int, int, int, LPWSTR, int );
THEMEAPI GetThemeFont( HTHEME, HDC, int, int, int, LOGFONTW * );
THEMEAPI GetThemeInt( HTHEME, int, int, int, int * );
THEMEAPI GetThemeIntList( HTHEME, int, int, int, INTLIST * );
THEMEAPI GetThemeMargins( HTHEME, HDC, int, int, int, LPCRECT, MARGINS * );
THEMEAPI GetThemeMetric( HTHEME, HDC, int, int, int, int * );
THEMEAPI GetThemePartSize( HTHEME, HDC, int, int, LPCRECT, enum THEMESIZE, SIZE * );
THEMEAPI GetThemePosition( HTHEME, int, int, int, POINT * );
THEMEAPI GetThemePropertyOrigin( HTHEME, int, int, int, enum PROPERTYORIGIN * );
THEMEAPI GetThemeRect( HTHEME, int, int, int, LPRECT );
THEMEAPI GetThemeString( HTHEME, int, int, int, LPWSTR, int );
THEMEAPI_( BOOL ) GetThemeSysBool( HTHEME, int );
THEMEAPI_( COLORREF ) GetThemeSysColor( HTHEME, int );
THEMEAPI_( HBRUSH ) GetThemeSysColorBrush( HTHEME, int );
THEMEAPI GetThemeSysFont( HTHEME, int, LOGFONTW * );
THEMEAPI GetThemeSysInt( HTHEME, int, int * );
THEMEAPI_( int ) GetThemeSysSize( HTHEME, int );
THEMEAPI GetThemeSysString( HTHEME, int, LPWSTR, int );
THEMEAPI GetThemeTextExtent( HTHEME, HDC, int, int, LPCWSTR, int, DWORD, LPCRECT, LPRECT );
THEMEAPI GetThemeTextMetrics( HTHEME, HDC, int, int, TEXTMETRICW * );
THEMEAPI_( HTHEME ) GetWindowTheme( HWND );
THEMEAPI HitTestThemeBackground( HTHEME, HDC, int, int, DWORD, LPCRECT, HRGN, POINT, WORD * );
THEMEAPI_( BOOL ) IsAppThemed( VOID );
THEMEAPI_( BOOL ) IsThemeActive( VOID );
THEMEAPI_( BOOL ) IsThemeBackgroundPartiallyTransparent( HTHEME, int, int );
THEMEAPI_( BOOL ) IsThemeDialogTextureEnabled( HWND );
THEMEAPI_( BOOL ) IsThemePartDefined( HTHEME, int, int );
THEMEAPI_( HTHEME ) OpenThemeData( HWND, LPCWSTR );
THEMEAPI_( HTHEME ) OpenThemeDataEx( HWND, LPCWSTR, DWORD );
THEMEAPI_( void ) SetThemeAppProperties( DWORD );
THEMEAPI SetWindowTheme( HWND, LPCWSTR, LPCWSTR );
#if (_WIN32_WINNT >= 0x0600)
THEMEAPI_( HANIMATIONBUFFER ) BeginBufferedAnimation( HWND, HDC, const RECT *, BP_BUFFERFORMAT, BP_PAINTPARAMS *, BP_ANIMATIONPARAMS *, HDC *, HDC * );
THEMEAPI_( HPAINTBUFFER ) BeginBufferedPaint( HDC, const RECT *, BP_BUFFERFORMAT, BP_PAINTPARAMS *, HDC * );
THEMEAPI BufferedPaintClear( HPAINTBUFFER, const RECT * );
THEMEAPI BufferedPaintInit( VOID );
THEMEAPI_( BOOL ) BufferedPaintRenderAnimation( HWND, HDC );
THEMEAPI BufferedPaintSetAlpha( HPAINTBUFFER, const RECT *, BYTE );
THEMEAPI BufferedPaintStopAllAnimations( HWND );
THEMEAPI BufferedPaintUnInit( VOID );
THEMEAPI DrawThemeParentBackgroundEx( HWND, HDC, DWORD, const RECT * );
THEMEAPI DrawThemeTextEx( HTHEME, HDC, int, int, LPCWSTR, int, DWORD, LPRECT, const DTTOPTS * );
THEMEAPI EndBufferedAnimation( HANIMATIONBUFFER, BOOL );
THEMEAPI EndBufferedPaint( HPAINTBUFFER, BOOL );
THEMEAPI GetBufferedPaintBits( HPAINTBUFFER, RGBQUAD **, int * );
THEMEAPI_( HDC ) GetBufferedPaintDC( HPAINTBUFFER );
THEMEAPI_( HDC ) GetBufferedPaintTargetDC( HPAINTBUFFER );
THEMEAPI GetBufferedPaintTargetRect( HPAINTBUFFER, RECT * );
THEMEAPI GetThemeBitmap( HTHEME, int, int, int, ULONG, HBITMAP * );
THEMEAPI GetThemeStream( HTHEME, int, int, int, VOID **, DWORD *, HINSTANCE );
THEMEAPI GetThemeTransitionDuration( HTHEME, int, int, int, int, DWORD * );
THEMEAPI_( BOOL ) IsCompositionActive();
THEMEAPI SetWindowThemeAttribute( HWND, enum WINDOWTHEMEATTRIBUTETYPE, PVOID, DWORD );
#endif
/* Functions implemented as macros */
#if (_WIN32_WINNT >= 0x0600)
#define BufferedPaintMakeOpaque( p1, p2 ) \
BufferedPaintSetAlpha( p1, p2, 255 )
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* _UXTHEME_H_ */