[uxtheme]
[reactos.git] / reactos / dll / win32 / uxtheme / uxthemedll.h
index ed37e72..e55d98f 100644 (file)
 #ifndef __WINE_UXTHEMEDLL_H
 #define __WINE_UXTHEMEDLL_H
 
-typedef HANDLE HTHEMEFILE;
-
-/**********************************************************************
- *              EnumThemeProc
- *
- * Callback function for EnumThemes.
- *
- * RETURNS
- *     TRUE to continue enumeration, FALSE to stop
- *
- * PARAMS
- *     lpReserved          Always 0
- *     pszThemeFileName    Full path to theme msstyles file
- *     pszThemeName        Display name for theme
- *     pszToolTip          Tooltip name for theme
- *     lpReserved2         Always 0
- *     lpData              Value passed through lpData from EnumThemes
- */
-typedef BOOL (CALLBACK *EnumThemeProc)(LPVOID lpReserved, LPCWSTR pszThemeFileName,
-                                       LPCWSTR pszThemeName, LPCWSTR pszToolTip, LPVOID lpReserved2,
-                                       LPVOID lpData);
-
-/**********************************************************************
- *              ParseThemeIniFileProc
- *
- * Callback function for ParseThemeIniFile.
- *
- * RETURNS
- *     TRUE to continue enumeration, FALSE to stop
- *
- * PARAMS
- *     dwType              Entry type
- *     pszParam1           Use defined by entry type
- *     pszParam2           Use defined by entry type
- *     pszParam3           Use defined by entry type
- *     dwParam             Use defined by entry type
- *     lpData              Value passed through lpData from ParseThemeIniFile
- *
- * NOTES
- * I don't know what the valid entry types are
- */
-typedef BOOL (CALLBACK*ParseThemeIniFileProc)(DWORD dwType, LPWSTR pszParam1,
-                                              LPWSTR pszParam2, LPWSTR pszParam3,
-                                              DWORD dwParam, LPVOID lpData);
-
-/* Structure filled in by EnumThemeColors() and EnumeThemeSizes() with the
- * various strings for a theme color or size. */
-typedef struct tagTHEMENAMES
-{
-    WCHAR szName[MAX_PATH+1];
-    WCHAR szDisplayName[MAX_PATH+1];
-    WCHAR szTooltip[MAX_PATH+1];
-} THEMENAMES, *PTHEMENAMES;
-
-/* Declarations for undocumented functions for use internally */
-DWORD WINAPI QueryThemeServices(void);
-HRESULT WINAPI OpenThemeFile(LPCWSTR pszThemeFileName, LPCWSTR pszColorName,
-                             LPCWSTR pszSizeName, HTHEMEFILE *hThemeFile,
-                             DWORD unknown);
-HRESULT WINAPI CloseThemeFile(HTHEMEFILE hThemeFile);
-HRESULT WINAPI ApplyTheme(HTHEMEFILE hThemeFile, char *unknown, HWND hWnd);
-HRESULT WINAPI GetThemeDefaults(LPCWSTR pszThemeFileName, LPWSTR pszColorName,
-                                DWORD dwColorNameLen, LPWSTR pszSizeName,
-                                DWORD dwSizeNameLen);
-HRESULT WINAPI EnumThemes(LPCWSTR pszThemePath, EnumThemeProc callback,
-                          LPVOID lpData);
-HRESULT WINAPI EnumThemeColors(LPWSTR pszThemeFileName, LPWSTR pszSizeName,
-                               DWORD dwColorNum, PTHEMENAMES pszColorNames);
-HRESULT WINAPI EnumThemeSizes(LPWSTR pszThemeFileName, LPWSTR pszColorName,
-                              DWORD dwSizeNum, PTHEMENAMES pszColorNames);
-HRESULT WINAPI ParseThemeIniFile(LPCWSTR pszIniFileName, LPWSTR pszUnknown,
-                                 ParseThemeIniFileProc callback, LPVOID lpData);
-
 extern void UXTHEME_InitSystem(HINSTANCE hInst);
+extern void UXTHEME_LoadTheme(BOOL bLoad);
+extern BOOL CALLBACK UXTHEME_broadcast_msg (HWND hWnd, LPARAM msg);
 
 /* No alpha blending */
 #define ALPHABLEND_NONE             0