diff options
author | patthoyts <patthoyts@users.sourceforge.net> | 2007-02-02 10:58:35 (GMT) |
---|---|---|
committer | patthoyts <patthoyts@users.sourceforge.net> | 2007-02-02 10:58:35 (GMT) |
commit | a74254940bbc0421f26970bcd3a16b660ae0527e (patch) | |
tree | 7705abf240a4d15b4d307090341d86603a26f1b6 /win | |
parent | dcabf7ac6e394c47766a5a81167c4ce83c3006a6 (diff) | |
download | tk-a74254940bbc0421f26970bcd3a16b660ae0527e.zip tk-a74254940bbc0421f26970bcd3a16b660ae0527e.tar.gz tk-a74254940bbc0421f26970bcd3a16b660ae0527e.tar.bz2 |
Support IsAppThemed() call. This is what is used when theming is
turned off just for an individual application.
Diffstat (limited to 'win')
-rw-r--r-- | win/ttkWinXPTheme.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/win/ttkWinXPTheme.c b/win/ttkWinXPTheme.c index 9df6d2f..5dbf553 100644 --- a/win/ttkWinXPTheme.c +++ b/win/ttkWinXPTheme.c @@ -1,5 +1,5 @@ /* - * $Id: ttkWinXPTheme.c,v 1.6 2007/01/11 19:59:26 jenglish Exp $ + * $Id: ttkWinXPTheme.c,v 1.7 2007/02/02 10:58:35 patthoyts Exp $ * * Tk theme engine which uses the Windows XP "Visual Styles" API * Adapted from Georgios Petasis' XP theme patch. @@ -51,6 +51,7 @@ typedef HRESULT (STDAPICALLTYPE DrawThemeTextProc)(HTHEME hTheme, HDC hdc, int iPartId, int iStateId, LPCWSTR pszText, int iCharCount, DWORD dwTextFlags, DWORD dwTextFlags2, const RECT *pRect); typedef BOOL (STDAPICALLTYPE IsThemeActiveProc)(VOID); +typedef BOOL (STDAPICALLTYPE IsAppThemedProc)(VOID); typedef struct { @@ -60,7 +61,8 @@ typedef struct DrawThemeBackgroundProc *DrawThemeBackground; DrawThemeTextProc *DrawThemeText; GetThemeTextExtentProc *GetThemeTextExtent; - IsThemeActiveProc *IsThemeActive; + IsThemeActiveProc *IsThemeActive; + IsAppThemedProc *IsAppThemed; HWND stubWindow; } XPThemeProcs; @@ -124,6 +126,7 @@ LoadXPThemeProcs(HINSTANCE *phlib) && LOADPROC(GetThemeTextExtent) && LOADPROC(DrawThemeText) && LOADPROC(IsThemeActive) + && LOADPROC(IsAppThemed) ) { return procs; @@ -153,7 +156,9 @@ static int XPThemeEnabled(Ttk_Theme theme, void *clientData) { XPThemeData *themeData = clientData; - return themeData->procs->IsThemeActive(); + int active = themeData->procs->IsThemeActive(); + int themed = themeData->procs->IsAppThemed(); + return (active && themed); } /* |