Keep track of theme filename within THEME_FILE.

This commit is contained in:
Kevin Koltzau 2004-02-17 20:22:27 +00:00 committed by Alexandre Julliard
parent 68eb0dd58d
commit f28552b3d3
3 changed files with 5 additions and 1 deletions

View File

@ -174,6 +174,9 @@ HRESULT MSSTYLES_OpenThemeFile(LPCWSTR lpThemeFile, LPCWSTR pszColorName, LPCWST
*tf = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(THEME_FILE));
(*tf)->hTheme = hTheme;
GetFullPathNameW(lpThemeFile, MAX_PATH, (*tf)->szThemeFile, NULL);
(*tf)->pszAvailColors = pszColors;
(*tf)->pszAvailSizes = pszSizes;
(*tf)->pszSelectedColor = pszSelectedColor;

View File

@ -59,6 +59,7 @@ typedef struct _THEME_CLASS {
typedef struct _THEME_FILE {
DWORD dwRefCount;
HMODULE hTheme;
WCHAR szThemeFile[MAX_PATH];
LPWSTR pszAvailColors;
LPWSTR pszAvailSizes;

View File

@ -152,7 +152,7 @@ HRESULT UXTHEME_SetActiveTheme(PTHEME_FILE tf)
return hr;
if(tf) {
bThemeActive = TRUE;
GetModuleFileNameW(tf->hTheme, szCurrentTheme, sizeof(szCurrentTheme)/sizeof(szCurrentTheme[0]));
lstrcpynW(szCurrentTheme, tf->szThemeFile, sizeof(szCurrentTheme)/sizeof(szCurrentTheme[0]));
lstrcpynW(szCurrentColor, tf->pszSelectedColor, sizeof(szCurrentColor)/sizeof(szCurrentColor[0]));
lstrcpynW(szCurrentSize, tf->pszSelectedSize, sizeof(szCurrentSize)/sizeof(szCurrentSize[0]));
}