| uxtheme.h (6.0.6001.18000-Windows 6.0) | | uxtheme.h (6.1.7600.16385-Windows 7.0) |
| | |
| skipping to change at line 27 | | skipping to change at line 27 |
| #define THEMEAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE | | #define THEMEAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE |
| #define THEMEAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE | | #define THEMEAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE |
| #else | | #else |
| #define THEMEAPI STDAPI | | #define THEMEAPI STDAPI |
| #define THEMEAPI_(type) STDAPI_(type) | | #define THEMEAPI_(type) STDAPI_(type) |
| #endif /* _UXTHEME_ */ | | #endif /* _UXTHEME_ */ |
| #endif /* THEMEAPI */ | | #endif /* THEMEAPI */ |
| | |
| typedef HANDLE HTHEME; // handle to a section of theme data for class | | typedef HANDLE HTHEME; // handle to a section of theme data for class |
| | |
|
| | #if (_WIN32_WINNT >= 0x0600) |
| #define MAX_THEMECOLOR 64 | | #define MAX_THEMECOLOR 64 |
| #define MAX_THEMESIZE 64 | | #define MAX_THEMESIZE 64 |
|
| | #endif |
| | |
| | #if (NTDDI_VERSION>= NTDDI_WIN7) |
| | //--------------------------------------------------------------------------- |
| | // BeginPanningFeedback - Visual feedback init function related to pan gesture |
| | // - internally called by DefaultGestureHandler |
| | // - called by application |
| | // |
| | // HWND hwnd - The handle to the Target window that will receive feedback |
| | // |
| | //--------------------------------------------------------------------------- |
| | BOOL WINAPI |
| | BeginPanningFeedback( |
| | __in HWND hwnd); |
| | //--------------------------------------------------------------------------- |
| | // UpdatePanningFeedback : Visual feedback function related to pan gesture |
| | // Can Be called only after a BeginPanningFeedback call |
| | // - internally called by DefaultGestureHandler |
| | // - called by application |
| | // |
| | // HWND hwnd - The handle to the Target window that will receive |
| | feedback |
| | // For the method to succeed this must be the same h |
| | wnd as provided in |
| | // BeginPanningFeedback |
| | // |
| | // LONG lTotalOverpanOffsetX - The Total displacement that the window has moved |
| | in the horizontal direction |
| | // since the end of scrollable region was reached. T |
| | he API would move the window by the distance specified |
| | // A maximum displacement of 30 pixels is allowed |
| | // |
| | // LONG lTotalOverpanOffsetY - The Total displacement that the window has moved |
| | in the horizontal direction |
| | // since the end of scrollable |
| | // region was reached. The API would move the window |
| | by the distance specified |
| | // A maximum displacement of 30 pixels is allowed |
| | // |
| | // BOOL fInInertia - Flag dictating whether the Application is handlin |
| | g a WM_GESTURE message with the |
| | // GF_INERTIA FLAG set |
| | // |
| | // Incremental calls to UpdatePanningFeedback should make sure they always pas |
| | s |
| | // the sum of the increments and not just the increment themselves |
| | // Eg : If the initial displacement is 10 pixels and the next displacement 10 |
| | pixels |
| | // the second call would be with the parameter as 20 pixels as opposed to |
| | 10 |
| | // Eg : UpdatePanningFeedback(hwnd, 10, 10, TRUE) |
| | // |
| | BOOL WINAPI |
| | UpdatePanningFeedback( |
| | __in HWND hwnd, |
| | __in LONG lTotalOverpanOffsetX, |
| | __in LONG lTotalOverpanOffsetY, |
| | __in BOOL fInInertia); |
| | |
| | //--------------------------------------------------------------------------- |
| | // |
| | // EndPanningFeedback :Visual feedback reset function related to pan gesture |
| | // - internally called by DefaultGestureHandler |
| | // - called by application |
| | // Terminates any existing animation that was in process or set up by BeginPan |
| | ningFeedback and UpdatePanningFeedback |
| | // The EndPanningFeedBack needs to be called Prior to calling any BeginPanning |
| | FeedBack if we have already |
| | // called a BeginPanningFeedBack followed by one/ more UpdatePanningFeedback c |
| | alls |
| | // |
| | // HWND hwnd - The handle to the Target window that will receive feedba |
| | ck |
| | // |
| | // BOOL fAnimateBack - Flag to indicate whether you wish the displaced window t |
| | o move back |
| | // to the original position via animation or a direct jump. |
| | // Either ways the method will try to restore the moved win |
| | dow. |
| | // The latter case exists for compatibility with legacy app |
| | s. |
| | // |
| | BOOL WINAPI |
| | EndPanningFeedback( |
| | __in HWND hwnd, |
| | __in BOOL fAnimateBack); |
| | #endif |
| | |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| // NOTE: PartId's and StateId's used in the theme API are defined in the | | // NOTE: PartId's and StateId's used in the theme API are defined in the |
| // hdr file <vssym32.h> using the TM_PART and TM_STATE macros. For | | // hdr file <vssym32.h> using the TM_PART and TM_STATE macros. For |
| // example, "TM_PART(BP, PUSHBUTTON)" defines the PartId "BP_PUSHBUTTON". | | // example, "TM_PART(BP, PUSHBUTTON)" defines the PartId "BP_PUSHBUTTON". |
| | |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| // OpenThemeData() - Open the theme data for the specified HWND and | | // OpenThemeData() - Open the theme data for the specified HWND and |
| // semi-colon separated list of class names. | | // semi-colon separated list of class names. |
| // | | // |
| | |
| skipping to change at line 260 | | skipping to change at line 331 |
| HDC hdc, | | HDC hdc, |
| int iPartId, | | int iPartId, |
| int iStateId, | | int iStateId, |
| __in_ecount(cchText) LPCWSTR pszText, | | __in_ecount(cchText) LPCWSTR pszText, |
| int cchText, | | int cchText, |
| DWORD dwTextFlags, | | DWORD dwTextFlags, |
| DWORD dwTextFlags2, | | DWORD dwTextFlags2, |
| LPCRECT pRect | | LPCRECT pRect |
| ); | | ); |
| | |
|
| //--------------------------------------------------------------------------- | | |
| // | | |
| // DrawThemeTextEx | | |
| // | | |
| | |
| // Callback function used by DrawTextWithGlow instead of DrawTextW | | |
| typedef | | |
| int | | |
| (WINAPI *DTT_CALLBACK_PROC) | | |
| ( | | |
| __in HDC hdc, | | |
| __inout_ecount(cchText) LPWSTR pszText, | | |
| __in int cchText, | | |
| __inout LPRECT prc, | | |
| __in UINT dwFlags, | | |
| __in LPARAM lParam); | | |
| | |
| //---- bits used in dwFlags of DTTOPTS ---- | | |
| #define DTT_TEXTCOLOR (1UL << 0) // crText has been specified | | |
| #define DTT_BORDERCOLOR (1UL << 1) // crBorder has been specified | | |
| #define DTT_SHADOWCOLOR (1UL << 2) // crShadow has been specified | | |
| #define DTT_SHADOWTYPE (1UL << 3) // iTextShadowType has been specifie | | |
| d | | |
| #define DTT_SHADOWOFFSET (1UL << 4) // ptShadowOffset has been specified | | |
| #define DTT_BORDERSIZE (1UL << 5) // iBorderSize has been specified | | |
| #define DTT_FONTPROP (1UL << 6) // iFontPropId has been specified | | |
| #define DTT_COLORPROP (1UL << 7) // iColorPropId has been specified | | |
| #define DTT_STATEID (1UL << 8) // IStateId has been specified | | |
| #define DTT_CALCRECT (1UL << 9) // Use pRect as and in/out parameter | | |
| #define DTT_APPLYOVERLAY (1UL << 10) // fApplyOverlay has been specified | | |
| #define DTT_GLOWSIZE (1UL << 11) // iGlowSize has been specified | | |
| #define DTT_CALLBACK (1UL << 12) // pfnDrawTextCallback has been spec | | |
| ified | | |
| #define DTT_COMPOSITED (1UL << 13) // Draws text with antialiased alpha | | |
| (needs a DIB section) | | |
| #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) | | |
| | |
| typedef struct _DTTOPTS | | |
| { | | |
| DWORD dwSize; // size of the struct | | |
| DWORD dwFlags; // which options have been specified | | |
| COLORREF crText; // color to use for text fill | | |
| COLORREF crBorder; // color to use for text outline | | |
| COLORREF crShadow; // color to use for text shadow | | |
| int iTextShadowType; // TST_SINGLE or TST_CONTINUOUS | | |
| POINT ptShadowOffset; // where shadow is drawn (relative to | | |
| text) | | |
| int iBorderSize; // Border radius around text | | |
| int iFontPropId; // Font property to use for the text | | |
| instead of TMT_FONT | | |
| int iColorPropId; // Color property to use for the text | | |
| instead of TMT_TEXTCOLOR | | |
| int iStateId; // Alternate state id | | |
| BOOL fApplyOverlay; // Overlay text on top of any text ef | | |
| fect? | | |
| int iGlowSize; // Glow radious around text | | |
| DTT_CALLBACK_PROC pfnDrawTextCallback; // Callback for DrawText | | |
| LPARAM lParam; // Parameter for callback | | |
| } DTTOPTS, *PDTTOPTS; | | |
| | |
| THEMEAPI | | |
| DrawThemeTextEx( | | |
| HTHEME hTheme, | | |
| HDC hdc, | | |
| int iPartId, | | |
| int iStateId, | | |
| __in_ecount(cchText) LPCWSTR pszText, | | |
| int cchText, | | |
| DWORD dwTextFlags, | | |
| __inout LPRECT pRect, | | |
| __in_opt const DTTOPTS *pOptions | | |
| ); | | |
| | | |
| //------------------------------------------------------------------------- | | //------------------------------------------------------------------------- |
| // GetThemeBackgroundContentRect() | | // GetThemeBackgroundContentRect() |
| // - gets the size of the content for the theme-defined | | // - gets the size of the content for the theme-defined |
| // background. This is usually the area inside | | // background. This is usually the area inside |
| // the borders or Margins. | | // the borders or Margins. |
| // | | // |
| // hTheme - theme data handle | | // hTheme - theme data handle |
| // hdc - (optional) device content to be used for drawing | | // hdc - (optional) device content to be used for drawing |
| // iPartId - part number to draw | | // iPartId - part number to draw |
| // iStateId - state number (of the part) to draw | | // iStateId - state number (of the part) to draw |
| | |
| skipping to change at line 852 | | skipping to change at line 845 |
| GetThemeMargins( | | GetThemeMargins( |
| HTHEME hTheme, | | HTHEME hTheme, |
| __in_opt HDC hdc, | | __in_opt HDC hdc, |
| int iPartId, | | int iPartId, |
| int iStateId, | | int iStateId, |
| int iPropId, | | int iPropId, |
| __in_opt LPCRECT prc, | | __in_opt LPCRECT prc, |
| __out MARGINS *pMargins | | __out MARGINS *pMargins |
| ); | | ); |
| | |
|
| #if WINVER >= 0x0600 | | #if (_WIN32_WINNT >= 0x0600) |
| #define MAX_INTLIST_COUNT 402 | | #define MAX_INTLIST_COUNT 402 |
| #else | | #else |
| #define MAX_INTLIST_COUNT 10 | | #define MAX_INTLIST_COUNT 10 |
| #endif | | #endif |
| | |
| typedef struct _INTLIST | | typedef struct _INTLIST |
| { | | { |
| int iValueCount; // number of values in iValues | | int iValueCount; // number of values in iValues |
| int iValues[MAX_INTLIST_COUNT]; | | int iValues[MAX_INTLIST_COUNT]; |
| } INTLIST, *PINTLIST; | | } INTLIST, *PINTLIST; |
| | |
| skipping to change at line 947 | | skipping to change at line 940 |
| // the specified window, you can pass an empty string (L"") so it | | // the specified window, you can pass an empty string (L"") so it |
| // won't match any section entries. | | // won't match any section entries. |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| THEMEAPI | | THEMEAPI |
| SetWindowTheme( | | SetWindowTheme( |
| HWND hwnd, | | HWND hwnd, |
| LPCWSTR pszSubAppName, | | LPCWSTR pszSubAppName, |
| LPCWSTR pszSubIdList | | LPCWSTR pszSubIdList |
| ); | | ); |
| | |
|
| enum WINDOWTHEMEATTRIBUTETYPE | | |
| { | | |
| WTA_NONCLIENT = 1 | | |
| }; | | |
| | |
| typedef struct _WTA_OPTIONS | | |
| { | | |
| DWORD dwFlags; // values for each style option specified in the bit | | |
| mask | | |
| DWORD dwMask; // bitmask for flags that are changing | | |
| // valid options are: WTNCA_NODRAWCAPTION, WTNCA_NOD | | |
| RAWICON, WTNCA_NOSYSMENU | | |
| } WTA_OPTIONS, *PWTA_OPTIONS; | | |
| | |
| #define WTNCA_NODRAWCAPTION 0x00000001 // don't draw the window caption | | |
| #define WTNCA_NODRAWICON 0x00000002 // don't draw the system icon | | |
| #define WTNCA_NOSYSMENU 0x00000004 // don't expose the system menu | | |
| icon functionality | | |
| #define WTNCA_NOMIRRORHELP 0x00000008 // don't mirror the question mar | | |
| k, even in RTL layout | | |
| #define WTNCA_VALIDBITS (WTNCA_NODRAWCAPTION | \ | | |
| WTNCA_NODRAWICON | \ | | |
| WTNCA_NOSYSMENU | \ | | |
| WTNCA_NOMIRRORHELP) | | |
| | |
| THEMEAPI | | |
| SetWindowThemeAttribute( | | |
| HWND hwnd, | | |
| enum WINDOWTHEMEATTRIBUTETYPE eAttribute, | | |
| __in_bcount(cbAttribute) PVOID pvAttribute, | | |
| DWORD cbAttribute | | |
| ); | | |
| | |
| __inline HRESULT SetWindowThemeNonClientAttributes(HWND hwnd, DWORD dwMask, DWOR | | |
| D dwAttributes) | | |
| { | | |
| WTA_OPTIONS wta; | | |
| wta.dwFlags = dwAttributes; | | |
| wta.dwMask = dwMask; | | |
| return SetWindowThemeAttribute(hwnd, WTA_NONCLIENT, (void*)&(wta), sizeof(wt | | |
| a)); | | |
| } | | |
| | | |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| // GetThemeFilename() - Get the value for the specified FILENAME property. | | // GetThemeFilename() - Get the value for the specified FILENAME property. |
| // | | // |
| // hTheme - theme data handle | | // hTheme - theme data handle |
| // iPartId - part number | | // iPartId - part number |
| // iStateId - state number of part | | // iStateId - state number of part |
| // iPropId - the property number to search for | | // iPropId - the property number to search for |
| // pszThemeFileName - output buffer to receive the filename | | // pszThemeFileName - output buffer to receive the filename |
| // cchMaxBuffChars - the size of the return buffer, in chars | | // cchMaxBuffChars - the size of the return buffer, in chars |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| | |
| skipping to change at line 1181 | | skipping to change at line 1137 |
| // hwnd - the window to get the HTHEME of | | // hwnd - the window to get the HTHEME of |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| THEMEAPI_(HTHEME) | | THEMEAPI_(HTHEME) |
| GetWindowTheme( | | GetWindowTheme( |
| HWND hwnd | | HWND hwnd |
| ); | | ); |
| | |
| #define ETDT_DISABLE 0x00000001 | | #define ETDT_DISABLE 0x00000001 |
| #define ETDT_ENABLE 0x00000002 | | #define ETDT_ENABLE 0x00000002 |
| #define ETDT_USETABTEXTURE 0x00000004 | | #define ETDT_USETABTEXTURE 0x00000004 |
|
| #define ETDT_USEAEROWIZARDTABTEXTURE 0x00000008 | | |
| | |
| #define ETDT_ENABLETAB (ETDT_ENABLE | \ | | #define ETDT_ENABLETAB (ETDT_ENABLE | \ |
| ETDT_USETABTEXTURE) | | ETDT_USETABTEXTURE) |
| | |
|
| | #if (_WIN32_WINNT >= 0x0600) |
| | #define ETDT_USEAEROWIZARDTABTEXTURE 0x00000008 |
| | |
| #define ETDT_ENABLEAEROWIZARDTAB (ETDT_ENABLE | \ | | #define ETDT_ENABLEAEROWIZARDTAB (ETDT_ENABLE | \ |
| ETDT_USEAEROWIZARDTABTEXTURE) | | ETDT_USEAEROWIZARDTABTEXTURE) |
| | |
| #define ETDT_VALIDBITS (ETDT_DISABLE | \ | | #define ETDT_VALIDBITS (ETDT_DISABLE | \ |
| ETDT_ENABLE | \ | | ETDT_ENABLE | \ |
| ETDT_USETABTEXTURE | \ | | ETDT_USETABTEXTURE | \ |
| ETDT_USEAEROWIZARDTABTEXTURE) | | ETDT_USEAEROWIZARDTABTEXTURE) |
|
| | #endif |
| | |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| // EnableThemeDialogTexture() | | // EnableThemeDialogTexture() |
| // | | // |
| // - Enables/disables dialog background theme. This method can be used to | | // - Enables/disables dialog background theme. This method can be used to |
| // tailor dialog compatibility with child windows and controls that | | // tailor dialog compatibility with child windows and controls that |
| // may or may not coordinate the rendering of their client area backgrounds | | // may or may not coordinate the rendering of their client area backgrounds |
| // with that of their parent dialog in a manner that supports seamless | | // with that of their parent dialog in a manner that supports seamless |
| // background texturing. | | // background texturing. |
| // | | // |
| | |
| skipping to change at line 1331 | | skipping to change at line 1290 |
| // prc - (optional) rect that defines the area to be | | // prc - (optional) rect that defines the area to be |
| // drawn (CHILD coordinates) | | // drawn (CHILD coordinates) |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| THEMEAPI | | THEMEAPI |
| DrawThemeParentBackground( | | DrawThemeParentBackground( |
| HWND hwnd, | | HWND hwnd, |
| HDC hdc, | | HDC hdc, |
| __in_opt const RECT* prc | | __in_opt const RECT* prc |
| ); | | ); |
| | |
|
| | //--------------------------------------------------------------------------- |
| | // EnableTheming() - enables or disables themeing for the current user |
| | // in the current and future sessions. |
| | // |
| | // fEnable - if FALSE, disable theming & turn themes off. |
| | // - if TRUE, enable themeing and, if user previously |
| | // had a theme active, make it active now. |
| | //--------------------------------------------------------------------------- |
| | THEMEAPI |
| | EnableTheming( |
| | BOOL fEnable |
| | ); |
| | |
| | #define GBF_DIRECT 0x00000001 // direct dereferencing. |
| | #define GBF_COPY 0x00000002 // create a copy of the bitmap |
| | #define GBF_VALIDBITS (GBF_DIRECT | \ |
| | GBF_COPY) |
| | |
| | #if (_WIN32_WINNT >= 0x0600) |
| | |
| #define DTPB_WINDOWDC 0x00000001 | | #define DTPB_WINDOWDC 0x00000001 |
| #define DTPB_USECTLCOLORSTATIC 0x00000002 | | #define DTPB_USECTLCOLORSTATIC 0x00000002 |
| #define DTPB_USEERASEBKGND 0x00000004 | | #define DTPB_USEERASEBKGND 0x00000004 |
| | |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| // DrawThemeParentBackgroundEx() | | // DrawThemeParentBackgroundEx() |
| // - used by partially-transparent or alpha-blended | | // - used by partially-transparent or alpha-blended |
| // child controls to draw the part of their parent | | // child controls to draw the part of their parent |
| // that they appear in front of. | | // that they appear in front of. |
| // Sends a WM_ERASEBKGND message followed by a WM_PRINTCL
IENT. | | // Sends a WM_ERASEBKGND message followed by a WM_PRINTCL
IENT. |
| | |
| skipping to change at line 1370 | | skipping to change at line 1349 |
| // Return value - S_OK if something was painted, S_FALSE if not. | | // Return value - S_OK if something was painted, S_FALSE if not. |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| THEMEAPI | | THEMEAPI |
| DrawThemeParentBackgroundEx( | | DrawThemeParentBackgroundEx( |
| HWND hwnd, | | HWND hwnd, |
| HDC hdc, | | HDC hdc, |
| DWORD dwFlags, | | DWORD dwFlags, |
| __in_opt const RECT* prc | | __in_opt const RECT* prc |
| ); | | ); |
| | |
|
| //--------------------------------------------------------------------------- | | enum WINDOWTHEMEATTRIBUTETYPE |
| // EnableTheming() - enables or disables themeing for the current user | | { |
| // in the current and future sessions. | | WTA_NONCLIENT = 1 |
| // | | }; |
| // fEnable - if FALSE, disable theming & turn themes off. | | |
| // - if TRUE, enable themeing and, if user previously | | typedef struct _WTA_OPTIONS |
| // had a theme active, make it active now. | | { |
| //--------------------------------------------------------------------------- | | DWORD dwFlags; // values for each style option specified in the bit |
| | mask |
| | DWORD dwMask; // bitmask for flags that are changing |
| | // valid options are: WTNCA_NODRAWCAPTION, WTNCA_NOD |
| | RAWICON, WTNCA_NOSYSMENU |
| | } WTA_OPTIONS, *PWTA_OPTIONS; |
| | |
| | #define WTNCA_NODRAWCAPTION 0x00000001 // don't draw the window caption |
| | #define WTNCA_NODRAWICON 0x00000002 // don't draw the system icon |
| | #define WTNCA_NOSYSMENU 0x00000004 // don't expose the system menu |
| | icon functionality |
| | #define WTNCA_NOMIRRORHELP 0x00000008 // don't mirror the question mar |
| | k, even in RTL layout |
| | #define WTNCA_VALIDBITS (WTNCA_NODRAWCAPTION | \ |
| | WTNCA_NODRAWICON | \ |
| | WTNCA_NOSYSMENU | \ |
| | WTNCA_NOMIRRORHELP) |
| | |
| THEMEAPI | | THEMEAPI |
|
| EnableTheming( | | SetWindowThemeAttribute( |
| BOOL fEnable | | HWND hwnd, |
| | enum WINDOWTHEMEATTRIBUTETYPE eAttribute, |
| | __in_bcount(cbAttribute) PVOID pvAttribute, |
| | DWORD cbAttribute |
| ); | | ); |
| | |
|
| #define GBF_DIRECT 0x00000001 // direct dereferencing. | | __inline HRESULT SetWindowThemeNonClientAttributes(HWND hwnd, DWORD dwMask, DWOR |
| #define GBF_COPY 0x00000002 // create a copy of the bitmap | | D dwAttributes) |
| #define GBF_VALIDBITS (GBF_DIRECT | \ | | { |
| GBF_COPY) | | WTA_OPTIONS wta; |
| | wta.dwFlags = dwAttributes; |
| | wta.dwMask = dwMask; |
| | return SetWindowThemeAttribute(hwnd, WTA_NONCLIENT, (void*)&(wta), sizeof(wt |
| | a)); |
| | } |
| | |
| | #endif // #if (_WIN32_WINNT >= 0x0600) |
| | |
| | //--------------------------------------------------------------------------- |
| | // |
| | // DrawThemeTextEx |
| | // |
| | // Note: DrawThemeTextEx only exists on Windows Vista and higher, but the |
| | // following declarations are provided to enable declaring its prototype when |
| | // compiling for all platforms. |
| | |
| | // Callback function used by DrawThemeTextEx, instead of DrawText |
| | typedef |
| | int |
| | (WINAPI *DTT_CALLBACK_PROC) |
| | ( |
| | __in HDC hdc, |
| | __inout_ecount(cchText) LPWSTR pszText, |
| | __in int cchText, |
| | __inout LPRECT prc, |
| | __in UINT dwFlags, |
| | __in LPARAM lParam); |
| | |
| | //---- bits used in dwFlags of DTTOPTS ---- |
| | #define DTT_TEXTCOLOR (1UL << 0) // crText has been specified |
| | #define DTT_BORDERCOLOR (1UL << 1) // crBorder has been specified |
| | #define DTT_SHADOWCOLOR (1UL << 2) // crShadow has been specified |
| | #define DTT_SHADOWTYPE (1UL << 3) // iTextShadowType has been specifie |
| | d |
| | #define DTT_SHADOWOFFSET (1UL << 4) // ptShadowOffset has been specified |
| | #define DTT_BORDERSIZE (1UL << 5) // iBorderSize has been specified |
| | #define DTT_FONTPROP (1UL << 6) // iFontPropId has been specified |
| | #define DTT_COLORPROP (1UL << 7) // iColorPropId has been specified |
| | #define DTT_STATEID (1UL << 8) // IStateId has been specified |
| | #define DTT_CALCRECT (1UL << 9) // Use pRect as and in/out parameter |
| | #define DTT_APPLYOVERLAY (1UL << 10) // fApplyOverlay has been specified |
| | #define DTT_GLOWSIZE (1UL << 11) // iGlowSize has been specified |
| | #define DTT_CALLBACK (1UL << 12) // pfnDrawTextCallback has been spec |
| | ified |
| | #define DTT_COMPOSITED (1UL << 13) // Draws text with antialiased alpha |
| | (needs a DIB section) |
| | #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) |
| | |
| | typedef struct _DTTOPTS |
| | { |
| | DWORD dwSize; // size of the struct |
| | DWORD dwFlags; // which options have been specified |
| | COLORREF crText; // color to use for text fill |
| | COLORREF crBorder; // color to use for text outline |
| | COLORREF crShadow; // color to use for text shadow |
| | int iTextShadowType; // TST_SINGLE or TST_CONTINUOUS |
| | POINT ptShadowOffset; // where shadow is drawn (relative to |
| | text) |
| | int iBorderSize; // Border radius around text |
| | int iFontPropId; // Font property to use for the text |
| | instead of TMT_FONT |
| | int iColorPropId; // Color property to use for the text |
| | instead of TMT_TEXTCOLOR |
| | int iStateId; // Alternate state id |
| | BOOL fApplyOverlay; // Overlay text on top of any text ef |
| | fect? |
| | int iGlowSize; // Glow radious around text |
| | DTT_CALLBACK_PROC pfnDrawTextCallback; // Callback for DrawText |
| | LPARAM lParam; // Parameter for callback |
| | } DTTOPTS, *PDTTOPTS; |
| | |
| #if (_WIN32_WINNT >= 0x0600) | | #if (_WIN32_WINNT >= 0x0600) |
| | |
| THEMEAPI | | THEMEAPI |
|
| | DrawThemeTextEx( |
| | HTHEME hTheme, |
| | HDC hdc, |
| | int iPartId, |
| | int iStateId, |
| | __in_ecount(cchText) LPCWSTR pszText, |
| | int cchText, |
| | DWORD dwTextFlags, |
| | __inout LPRECT pRect, |
| | __in_opt const DTTOPTS *pOptions |
| | ); |
| | |
| | //----------------------------------------------------------------------- |
| | // GetThemeStream() - Get the value for the specified STREAM property |
| | // |
| | // hTheme - theme data handle |
| | // iPartId - part number |
| | // iStateId - state number of part |
| | // iPropId - the property number to get the value for |
| | // ppvStream - if non-null receives the value of the STREAM property (not |
| | to be freed) |
| | // pcbStream - if non-null receives the size of the STREAM property |
| | // hInst - NULL when iPropId==TMT_STREAM, HINSTANCE of a loaded mssty |
| | les |
| | // file when iPropId==TMT_DISKSTREAM (use GetCurrentThemeName |
| | // and LoadLibraryEx(LOAD_LIBRARY_AS_DATAFILE) |
| | //----------------------------------------------------------------------- |
| | THEMEAPI |
| GetThemeBitmap( | | GetThemeBitmap( |
| HTHEME hTheme, | | HTHEME hTheme, |
| int iPartId, | | int iPartId, |
| int iStateId, | | int iStateId, |
| int iPropId, | | int iPropId, |
| ULONG dwFlags, | | ULONG dwFlags, |
| __out HBITMAP* phBitmap | | __out HBITMAP* phBitmap |
| ); | | ); |
| | |
| //----------------------------------------------------------------------- | | //----------------------------------------------------------------------- |
| | |
| skipping to change at line 1424 | | skipping to change at line 1518 |
| GetThemeStream( | | GetThemeStream( |
| HTHEME hTheme, | | HTHEME hTheme, |
| int iPartId, | | int iPartId, |
| int iStateId, | | int iStateId, |
| int iPropId, | | int iPropId, |
| __out VOID **ppvStream, | | __out VOID **ppvStream, |
| __out_opt DWORD *pcbStream, | | __out_opt DWORD *pcbStream, |
| __in_opt HINSTANCE hInst | | __in_opt HINSTANCE hInst |
| ); | | ); |
| | |
|
| #endif // #if (_WIN32_WINNT >= 0x0600) | | |
| | | |
| //------------------------------------------------------------------------ | | //------------------------------------------------------------------------ |
| // BufferedPaintInit() - Initialize the Buffered Paint API. | | // BufferedPaintInit() - Initialize the Buffered Paint API. |
| // Should be called prior to BeginBufferedPaint, | | // Should be called prior to BeginBufferedPaint, |
| // and should have a matching BufferedPaintUnInit. | | // and should have a matching BufferedPaintUnInit. |
| //------------------------------------------------------------------------ | | //------------------------------------------------------------------------ |
| THEMEAPI | | THEMEAPI |
| BufferedPaintInit( | | BufferedPaintInit( |
| VOID | | VOID |
| ); | | ); |
| | |
| | |
| skipping to change at line 1501 | | skipping to change at line 1593 |
| | |
| // BP_PAINTPARAMS | | // BP_PAINTPARAMS |
| typedef struct _BP_PAINTPARAMS | | typedef struct _BP_PAINTPARAMS |
| { | | { |
| DWORD cbSize; | | DWORD cbSize; |
| DWORD dwFlags; // BPPF_ flags | | DWORD dwFlags; // BPPF_ flags |
| const RECT * prcExclude; | | const RECT * prcExclude; |
| const BLENDFUNCTION * pBlendFunction; | | const BLENDFUNCTION * pBlendFunction; |
| } BP_PAINTPARAMS, *PBP_PAINTPARAMS; | | } BP_PAINTPARAMS, *PBP_PAINTPARAMS; |
| | |
|
| THEMEAPI_(HPAINTBUFFER) | | THEMEAPI_(__success(return != NULL) HPAINTBUFFER) |
| BeginBufferedPaint( | | BeginBufferedPaint( |
| HDC hdcTarget, | | HDC hdcTarget, |
| const RECT* prcTarget, | | const RECT* prcTarget, |
| BP_BUFFERFORMAT dwFormat, | | BP_BUFFERFORMAT dwFormat, |
| __in_opt BP_PAINTPARAMS *pPaintParams, | | __in_opt BP_PAINTPARAMS *pPaintParams, |
| __out HDC *phdc | | __out HDC *phdc |
| ); | | ); |
| | |
| //------------------------------------------------------------------------ | | //------------------------------------------------------------------------ |
| // EndBufferedPaint() - Ends a buffered paint operation. | | // EndBufferedPaint() - Ends a buffered paint operation. |
| | |
| skipping to change at line 1662 | | skipping to change at line 1754 |
| THEMEAPI | | THEMEAPI |
| GetThemeTransitionDuration( | | GetThemeTransitionDuration( |
| HTHEME hTheme, | | HTHEME hTheme, |
| int iPartId, | | int iPartId, |
| int iStateIdFrom, | | int iStateIdFrom, |
| int iStateIdTo, | | int iStateIdTo, |
| int iPropId, | | int iPropId, |
| __out DWORD *pdwDuration | | __out DWORD *pdwDuration |
| ); | | ); |
| | |
|
| | #endif // #if (_WIN32_WINNT >= 0x0600) |
| | |
| #endif /* _UXTHEME_H_ */ | | #endif /* _UXTHEME_H_ */ |
| | |
| End of changes. 16 change blocks. |
| 147 lines changed or deleted | | 260 lines changed or added |
|