ReactOS  0.4.14-dev-77-gd9e7c48
uxundoc.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tagTHEMENAMES
 

Macros

#define DNCP_ACTIVEWINDOW   0x1
 
#define DNCP_INACTIVEWINDOW   0x2
 
#define DNCP_DIALOGWINDOW   0x4
 
#define DNCP_DRAW_ALL   DNCP_ACTIVEWINDOW | DNCP_INACTIVEWINDOW | DNCP_DIALOGWINDOW
 

Typedefs

typedef HANDLE HTHEMEFILE
 
typedef BOOL(CALLBACKENUMTHEMEPROC) (LPVOID lpReserved, LPCWSTR pszThemeFileName, LPCWSTR pszThemeName, LPCWSTR pszToolTip, LPVOID lpReserved2, LPVOID lpData)
 
typedef BOOL(CALLBACKPARSETHEMEINIFILEPROC) (DWORD dwType, LPWSTR pszParam1, LPWSTR pszParam2, LPWSTR pszParam3, DWORD dwParam, LPVOID lpData)
 
typedef struct tagTHEMENAMES THEMENAMES
 
typedef struct tagTHEMENAMESPTHEMENAMES
 

Functions

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)
 
HTHEME WINAPI OpenThemeDataFromFile (HTHEMEFILE hThemeFile, HWND hwnd, LPCWSTR pszClassList, DWORD flags)
 
HRESULT WINAPI DrawNCPreview (HDC hDC, DWORD DNCP_Flag, LPRECT prcPreview, LPCWSTR pszThemeFileName, LPCWSTR pszColorName, LPCWSTR pszSizeName, PNONCLIENTMETRICSW pncMetrics, COLORREF *lpaRgbValues)
 
BOOL WINAPI ThemeHooksInstall (VOID)
 
BOOL WINAPI ThemeHooksRemove (VOID)
 

Macro Definition Documentation

◆ DNCP_ACTIVEWINDOW

#define DNCP_ACTIVEWINDOW   0x1

Definition at line 103 of file uxundoc.h.

◆ DNCP_DIALOGWINDOW

#define DNCP_DIALOGWINDOW   0x4

Definition at line 105 of file uxundoc.h.

◆ DNCP_DRAW_ALL

Definition at line 106 of file uxundoc.h.

◆ DNCP_INACTIVEWINDOW

#define DNCP_INACTIVEWINDOW   0x2

Definition at line 104 of file uxundoc.h.

Typedef Documentation

◆ ENUMTHEMEPROC

typedef BOOL(CALLBACK * ENUMTHEMEPROC) (LPVOID lpReserved, LPCWSTR pszThemeFileName, LPCWSTR pszThemeName, LPCWSTR pszToolTip, LPVOID lpReserved2, LPVOID lpData)

Definition at line 21 of file uxundoc.h.

◆ HTHEMEFILE

typedef HANDLE HTHEMEFILE

Definition at line 3 of file uxundoc.h.

◆ PARSETHEMEINIFILEPROC

typedef BOOL(CALLBACK* PARSETHEMEINIFILEPROC) (DWORD dwType, LPWSTR pszParam1, LPWSTR pszParam2, LPWSTR pszParam3, DWORD dwParam, LPVOID lpData)

Definition at line 44 of file uxundoc.h.

◆ PTHEMENAMES

◆ THEMENAMES

Function Documentation

◆ ApplyTheme()

HRESULT WINAPI ApplyTheme ( HTHEMEFILE  hThemeFile,
char unknown,
HWND  hWnd 
)

Definition at line 1158 of file system.c.

1159 {
1160  HRESULT hr;
1161  TRACE("(%p,%s,%p)\n", hThemeFile, unknown, hWnd);
1162  hr = UXTHEME_ApplyTheme(hThemeFile);
1164  return hr;
1165 }
HRESULT hr
Definition: shlfolder.c:183
HWND hWnd
Definition: settings.c:17
smooth NULL
Definition: ftsmooth.c:416
PTHEME_FILE g_ActiveThemeFile
Definition: system.c:54
#define TRACE(s)
Definition: solgame.cpp:4
LONG HRESULT
Definition: typedefs.h:77
Definition: id3.c:18
static HRESULT UXTHEME_ApplyTheme(PTHEME_FILE tf)
Definition: system.c:512
BOOL CALLBACK UXTHEME_broadcast_theme_changed(HWND hWnd, LPARAM enable)
Definition: system.c:68

Referenced by ActivateTheme().

◆ CloseThemeFile()

HRESULT WINAPI CloseThemeFile ( HTHEMEFILE  hThemeFile)

Definition at line 1127 of file system.c.

1128 {
1129  TRACE("(%p)\n", hThemeFile);
1130  MSSTYLES_CloseThemeFile(hThemeFile);
1131  return S_OK;
1132 }
#define TRACE(s)
Definition: solgame.cpp:4
#define S_OK
Definition: intsafe.h:59
void MSSTYLES_CloseThemeFile(PTHEME_FILE tf)
Definition: msstyles.c:179

Referenced by ActivateTheme().

◆ DrawNCPreview()

HRESULT WINAPI DrawNCPreview ( HDC  hDC,
DWORD  DNCP_Flag,
LPRECT  prcPreview,
LPCWSTR  pszThemeFileName,
LPCWSTR  pszColorName,
LPCWSTR  pszSizeName,
PNONCLIENTMETRICSW  pncMetrics,
COLORREF lpaRgbValues 
)

Definition at line 1069 of file nonclient.c.

1077 {
1078  WNDCLASSEXW DummyPreviewWindowClass;
1079  HWND hwndDummy;
1080  HRESULT hres;
1081  HTHEMEFILE hThemeFile;
1083  RECT rcCurrent;
1084 
1085  /* FIXME: We also need to implement drawing the rest of the preview windows
1086  * and make use of the ncmetrics and colors passed as parameters */
1087 
1088  /* Create a dummy window that will be used to trick the paint funtions */
1089  memset(&DummyPreviewWindowClass, 0, sizeof(DummyPreviewWindowClass));
1090  DummyPreviewWindowClass.cbSize = sizeof(DummyPreviewWindowClass);
1091  DummyPreviewWindowClass.lpszClassName = L"DummyPreviewWindowClass";
1092  DummyPreviewWindowClass.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
1093  DummyPreviewWindowClass.hInstance = hDllInst;
1094  DummyPreviewWindowClass.lpfnWndProc = DefWindowProcW;
1095  if (!RegisterClassExW(&DummyPreviewWindowClass))
1096  return E_FAIL;
1097 
1098  hwndDummy = CreateWindowExW(0, L"DummyPreviewWindowClass", L"Active window", WS_OVERLAPPEDWINDOW,30,30,300,150,0,0,hDllInst,NULL);
1099  if (!hwndDummy)
1100  return E_FAIL;
1101 
1102  hres = OpenThemeFile(pszThemeFileName, pszColorName, pszSizeName, &hThemeFile,0);
1103  if (FAILED(hres))
1104  return hres;
1105 
1106  /* Initialize the special draw context for the preview */
1107  context.hDC = hDC;
1108  context.hWnd = hwndDummy;
1109  context.theme = OpenThemeDataFromFile(hThemeFile, hwndDummy, L"WINDOW", 0);
1110  if (!context.theme)
1111  return E_FAIL;
1112  context.scrolltheme = OpenThemeDataFromFile(hThemeFile, hwndDummy, L"SCROLLBAR", 0);
1113  if (!context.scrolltheme)
1114  return E_FAIL;
1115  context.Active = TRUE;
1116  context.wi.cbSize = sizeof(context.wi);
1117  if (!GetWindowInfo(hwndDummy, &context.wi))
1118  return E_FAIL;
1119  context.wi.dwStyle |= WS_VISIBLE;
1120  context.CaptionHeight = context.wi.cyWindowBorders;
1121  context.CaptionHeight += GetSystemMetrics(context.wi.dwExStyle & WS_EX_TOOLWINDOW ? SM_CYSMCAPTION : SM_CYCAPTION );
1122  context.hRgn = CreateRectRgnIndirect(&context.wi.rcWindow);
1123 
1124  /* Paint the window on the preview hDC */
1125  rcCurrent = context.wi.rcWindow;
1126  OffsetRect( &rcCurrent, -context.wi.rcWindow.left, -context.wi.rcWindow.top);
1127  SetViewportOrgEx(hDC, context.wi.rcWindow.left, context.wi.rcWindow.top, NULL);
1128  ThemeCalculateCaptionButtonsPos(hwndDummy, context.theme);
1129  ThemePaintWindow(&context, &rcCurrent, FALSE);
1130  SetViewportOrgEx(hDC, 0, 0, NULL);
1131 
1132  context.hDC = NULL;
1133  CloseThemeData (context.theme);
1134  CloseThemeData (context.scrolltheme);
1136 
1137  /* Cleanup */
1138  DestroyWindow(hwndDummy);
1139  UnregisterClassW(L"DummyPreviewWindowClass", hDllInst);
1140 
1141  return S_OK;
1142 }
BOOL WINAPI SetViewportOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
Definition: coord.c:655
#define TRUE
Definition: types.h:120
BOOL WINAPI OffsetRect(_Inout_ LPRECT, _In_ int, _In_ int)
BOOL WINAPI UnregisterClassW(_In_ LPCWSTR, HINSTANCE)
HINSTANCE hDllInst
Definition: system.c:45
Definition: http.c:6587
void ThemeCleanupDrawContext(PDRAW_CONTEXT pcontext)
Definition: nonclient.c:180
HRGN WINAPI CreateRectRgnIndirect(_In_ LPCRECT)
#define E_FAIL
Definition: ddrawi.h:102
BOOL WINAPI DestroyWindow(_In_ HWND)
#define WS_EX_TOOLWINDOW
Definition: winuser.h:404
#define COLOR_WINDOW
Definition: winuser.h:908
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
static void ThemePaintWindow(PDRAW_CONTEXT pcontext, RECT *prcCurrent, BOOL bDoDoubleBuffering)
Definition: nonclient.c:551
ATOM WINAPI RegisterClassExW(_In_ CONST WNDCLASSEXW *)
smooth NULL
Definition: ftsmooth.c:416
LPCWSTR lpszClassName
Definition: winuser.h:3200
HRESULT hres
Definition: protocol.c:465
#define SM_CYCAPTION
Definition: winuser.h:953
HBRUSH hbrBackground
Definition: winuser.h:3198
LONG HRESULT
Definition: typedefs.h:77
UINT cbSize
Definition: winuser.h:3190
int WINAPI GetSystemMetrics(_In_ int)
void ThemeCalculateCaptionButtonsPos(HWND hWnd, HTHEME htheme)
Definition: nonclient.c:213
HINSTANCE hInstance
Definition: winuser.h:3195
static const WCHAR L[]
Definition: oid.c:1250
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
WNDPROC lpfnWndProc
Definition: winuser.h:3192
static HDC hDC
Definition: 3dtext.c:33
#define S_OK
Definition: intsafe.h:59
BOOL WINAPI GetWindowInfo(_In_ HWND, _Inout_ PWINDOWINFO)
HRESULT WINAPI OpenThemeFile(LPCWSTR pszThemeFileName, LPCWSTR pszColorName, LPCWSTR pszSizeName, HTHEMEFILE *hThemeFile, DWORD unknown)
Definition: system.c:1101
#define WS_OVERLAPPEDWINDOW
Definition: pedump.c:637
#define WS_VISIBLE
Definition: pedump.c:620
#define memset(x, y, z)
Definition: compat.h:39
#define SM_CYSMCAPTION
Definition: winuser.h:1004
HTHEME WINAPI OpenThemeDataFromFile(HTHEMEFILE hThemeFile, HWND hwnd, LPCWSTR pszClassList, DWORD flags)
Definition: system.c:827
HRESULT WINAPI CloseThemeData(HTHEME hTheme)
Definition: system.c:950

Referenced by DrawThemePreview().

◆ EnumThemeColors()

HRESULT WINAPI EnumThemeColors ( LPWSTR  pszThemeFileName,
LPWSTR  pszSizeName,
DWORD  dwColorNum,
PTHEMENAMES  pszColorNames 
)

Definition at line 1310 of file system.c.

1312 {
1313  PTHEME_FILE pt;
1314  HRESULT hr;
1315  LPWSTR tmp;
1316  UINT resourceId = dwColorNum + 1000;
1317  TRACE("(%s,%s,%d)\n", debugstr_w(pszThemeFileName),
1318  debugstr_w(pszSizeName), dwColorNum);
1319 
1320  if (!g_bThemeHooksActive)
1321  return E_FAIL;
1322 
1323  hr = MSSTYLES_OpenThemeFile(pszThemeFileName, NULL, pszSizeName, &pt);
1324  if(FAILED(hr)) return hr;
1325 
1326  tmp = pt->pszAvailColors;
1327  while(dwColorNum && *tmp) {
1328  dwColorNum--;
1329  tmp += lstrlenW(tmp)+1;
1330  }
1331  if(!dwColorNum && *tmp) {
1332  TRACE("%s\n", debugstr_w(tmp));
1333  lstrcpyW(pszColorNames->szName, tmp);
1334  LoadStringW (pt->hTheme, resourceId,
1335  pszColorNames->szDisplayName,
1336  sizeof (pszColorNames->szDisplayName) / sizeof (WCHAR));
1337  LoadStringW (pt->hTheme, resourceId+1000,
1338  pszColorNames->szTooltip,
1339  sizeof (pszColorNames->szTooltip) / sizeof (WCHAR));
1340  }
1341  else
1343 
1345  return hr;
1346 }
WCHAR szDisplayName[MAX_PATH+1]
Definition: uxundoc.h:53
HRESULT hr
Definition: shlfolder.c:183
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
#define pt(x, y)
Definition: drawing.c:79
WCHAR szName[MAX_PATH+1]
Definition: uxundoc.h:52
#define lstrlenW
Definition: compat.h:407
#define E_FAIL
Definition: ddrawi.h:102
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
#define debugstr_w
Definition: kernel32.h:32
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
#define E_PROP_ID_UNSUPPORTED
Definition: vfwmsgs.h:173
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:77
HRESULT MSSTYLES_OpenThemeFile(LPCWSTR lpThemeFile, LPCWSTR pszColorName, LPCWSTR pszSizeName, PTHEME_FILE *tf)
Definition: msstyles.c:54
WCHAR szTooltip[MAX_PATH+1]
Definition: uxundoc.h:54
#define lstrcpyW
Definition: compat.h:406
unsigned int UINT
Definition: ndis.h:50
BOOL g_bThemeHooksActive
Definition: themehooks.c:15
WCHAR * LPWSTR
Definition: xmlstorage.h:184
void MSSTYLES_CloseThemeFile(PTHEME_FILE tf)
Definition: msstyles.c:179

Referenced by LoadTheme().

◆ EnumThemes()

HRESULT WINAPI EnumThemes ( LPCWSTR  pszThemePath,
ENUMTHEMEPROC  callback,
LPVOID  lpData 
)

Definition at line 1221 of file system.c.

1223 {
1224  WCHAR szDir[MAX_PATH];
1226  static const WCHAR szStar[] = {'*','.','*','\0'};
1227  static const WCHAR szFormat[] = {'%','s','%','s','\\','%','s','.','m','s','s','t','y','l','e','s','\0'};
1228  static const WCHAR szDisplayName[] = {'d','i','s','p','l','a','y','n','a','m','e','\0'};
1229  static const WCHAR szTooltip[] = {'t','o','o','l','t','i','p','\0'};
1230  WCHAR szName[60];
1231  WCHAR szTip[60];
1232  HANDLE hFind;
1233  WIN32_FIND_DATAW wfd;
1234  HRESULT hr;
1235  size_t pathLen;
1236 
1237  TRACE("(%s,%p,%p)\n", debugstr_w(pszThemePath), callback, lpData);
1238 
1239  if(!pszThemePath || !callback)
1240  return E_POINTER;
1241 
1242  lstrcpyW(szDir, pszThemePath);
1243  pathLen = lstrlenW (szDir);
1244  if ((pathLen > 0) && (pathLen < MAX_PATH-1) && (szDir[pathLen - 1] != '\\'))
1245  {
1246  szDir[pathLen] = '\\';
1247  szDir[pathLen+1] = 0;
1248  }
1249 
1250  lstrcpyW(szPath, szDir);
1251  lstrcatW(szPath, szStar);
1252  TRACE("searching %s\n", debugstr_w(szPath));
1253 
1254  hFind = FindFirstFileW(szPath, &wfd);
1255  if(hFind != INVALID_HANDLE_VALUE) {
1256  do {
1257  if(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY
1258  && !(wfd.cFileName[0] == '.' && ((wfd.cFileName[1] == '.' && wfd.cFileName[2] == 0) || wfd.cFileName[1] == 0))) {
1259  wsprintfW(szPath, szFormat, szDir, wfd.cFileName, wfd.cFileName);
1260 
1261  hr = GetThemeDocumentationProperty(szPath, szDisplayName, szName, sizeof(szName)/sizeof(szName[0]));
1262  if(FAILED(hr))
1263  {
1264  ERR("Failed to get theme name from %S\n", szPath);
1265  continue;
1266  }
1267 
1268  hr = GetThemeDocumentationProperty(szPath, szTooltip, szTip, sizeof(szTip)/sizeof(szTip[0]));
1269  if (FAILED(hr))
1270  szTip[0] = 0;
1271 
1272  TRACE("callback(%s,%s,%s,%p)\n", debugstr_w(szPath), debugstr_w(szName), debugstr_w(szTip), lpData);
1273  if(!callback(NULL, szPath, szName, szTip, NULL, lpData)) {
1274  TRACE("callback ended enum\n");
1275  break;
1276  }
1277  }
1278  } while(FindNextFileW(hFind, &wfd));
1279  FindClose(hFind);
1280  }
1281  return S_OK;
1282 }
int WINAPIV wsprintfW(_Out_ LPWSTR, _In_ _Printf_format_string_ LPCWSTR,...)
BOOL WINAPI FindNextFileW(IN HANDLE hFindFile, OUT LPWIN32_FIND_DATAW lpFindFileData)
Definition: find.c:382
HRESULT hr
Definition: shlfolder.c:183
#define INVALID_HANDLE_VALUE
Definition: compat.h:391
HRESULT WINAPI GetThemeDocumentationProperty(LPCWSTR pszThemeName, LPCWSTR pszPropertyName, LPWSTR pszValueBuff, int cchMaxValChars)
Definition: system.c:1010
#define lstrlenW
Definition: compat.h:407
#define debugstr_w
Definition: kernel32.h:32
smooth NULL
Definition: ftsmooth.c:416
#define FILE_ATTRIBUTE_DIRECTORY
Definition: nt_native.h:705
MmuTrapHandler callback[0x30]
Definition: mmuobject.c:44
#define TRACE(s)
Definition: solgame.cpp:4
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:77
#define MAX_PATH
Definition: compat.h:26
#define ERR(fmt,...)
Definition: debug.h:109
#define S_OK
Definition: intsafe.h:59
#define lstrcpyW
Definition: compat.h:406
LPCWSTR szPath
Definition: env.c:35
static const WCHAR szName[]
Definition: msipriv.h:1194
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
Definition: lstring.c:274
#define E_POINTER
Definition: winerror.h:2365
HANDLE WINAPI FindFirstFileW(IN LPCWSTR lpFileName, OUT LPWIN32_FIND_DATAW lpFindFileData)
Definition: find.c:320
BOOL WINAPI FindClose(HANDLE hFindFile)
Definition: find.c:502

Referenced by LoadThemes().

◆ EnumThemeSizes()

HRESULT WINAPI EnumThemeSizes ( LPWSTR  pszThemeFileName,
LPWSTR  pszColorName,
DWORD  dwSizeNum,
PTHEMENAMES  pszColorNames 
)

Definition at line 1373 of file system.c.

1375 {
1376  PTHEME_FILE pt;
1377  HRESULT hr;
1378  LPWSTR tmp;
1379  UINT resourceId = dwSizeNum + 3000;
1380  TRACE("(%s,%s,%d)\n", debugstr_w(pszThemeFileName),
1381  debugstr_w(pszColorName), dwSizeNum);
1382 
1383  if (!g_bThemeHooksActive)
1384  return E_FAIL;
1385 
1386  hr = MSSTYLES_OpenThemeFile(pszThemeFileName, pszColorName, NULL, &pt);
1387  if(FAILED(hr)) return hr;
1388 
1389  tmp = pt->pszAvailSizes;
1390  while(dwSizeNum && *tmp) {
1391  dwSizeNum--;
1392  tmp += lstrlenW(tmp)+1;
1393  }
1394  if(!dwSizeNum && *tmp) {
1395  TRACE("%s\n", debugstr_w(tmp));
1396  lstrcpyW(pszSizeNames->szName, tmp);
1397  LoadStringW (pt->hTheme, resourceId,
1398  pszSizeNames->szDisplayName,
1399  sizeof (pszSizeNames->szDisplayName) / sizeof (WCHAR));
1400  LoadStringW (pt->hTheme, resourceId+1000,
1401  pszSizeNames->szTooltip,
1402  sizeof (pszSizeNames->szTooltip) / sizeof (WCHAR));
1403  }
1404  else
1406 
1408  return hr;
1409 }
HRESULT hr
Definition: shlfolder.c:183
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
#define pt(x, y)
Definition: drawing.c:79
#define lstrlenW
Definition: compat.h:407
#define E_FAIL
Definition: ddrawi.h:102
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
#define debugstr_w
Definition: kernel32.h:32
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
#define E_PROP_ID_UNSUPPORTED
Definition: vfwmsgs.h:173
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:77
HRESULT MSSTYLES_OpenThemeFile(LPCWSTR lpThemeFile, LPCWSTR pszColorName, LPCWSTR pszSizeName, PTHEME_FILE *tf)
Definition: msstyles.c:54
#define lstrcpyW
Definition: compat.h:406
unsigned int UINT
Definition: ndis.h:50
BOOL g_bThemeHooksActive
Definition: themehooks.c:15
WCHAR * LPWSTR
Definition: xmlstorage.h:184
void MSSTYLES_CloseThemeFile(PTHEME_FILE tf)
Definition: msstyles.c:179

Referenced by LoadTheme().

◆ GetThemeDefaults()

HRESULT WINAPI GetThemeDefaults ( LPCWSTR  pszThemeFileName,
LPWSTR  pszColorName,
DWORD  dwColorNameLen,
LPWSTR  pszSizeName,
DWORD  dwSizeNameLen 
)

Definition at line 1183 of file system.c.

1186 {
1187  PTHEME_FILE pt;
1188  HRESULT hr;
1189  TRACE("(%s,%p,%d,%p,%d)\n", debugstr_w(pszThemeFileName),
1190  pszColorName, dwColorNameLen,
1191  pszSizeName, dwSizeNameLen);
1192 
1193  if (!g_bThemeHooksActive)
1194  return E_FAIL;
1195 
1196  hr = MSSTYLES_OpenThemeFile(pszThemeFileName, NULL, NULL, &pt);
1197  if(FAILED(hr)) return hr;
1198 
1199  lstrcpynW(pszColorName, pt->pszSelectedColor, dwColorNameLen);
1200  lstrcpynW(pszSizeName, pt->pszSelectedSize, dwSizeNameLen);
1201 
1203  return S_OK;
1204 }
HRESULT hr
Definition: shlfolder.c:183
#define pt(x, y)
Definition: drawing.c:79
#define E_FAIL
Definition: ddrawi.h:102
#define lstrcpynW
Definition: compat.h:397
#define debugstr_w
Definition: kernel32.h:32
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
LONG HRESULT
Definition: typedefs.h:77
HRESULT MSSTYLES_OpenThemeFile(LPCWSTR lpThemeFile, LPCWSTR pszColorName, LPCWSTR pszSizeName, PTHEME_FILE *tf)
Definition: msstyles.c:54
#define S_OK
Definition: intsafe.h:59
BOOL g_bThemeHooksActive
Definition: themehooks.c:15
void MSSTYLES_CloseThemeFile(PTHEME_FILE tf)
Definition: msstyles.c:179

◆ OpenThemeDataFromFile()

HTHEME WINAPI OpenThemeDataFromFile ( HTHEMEFILE  hThemeFile,
HWND  hwnd,
LPCWSTR  pszClassList,
DWORD  flags 
)

Definition at line 827 of file system.c.

828 {
829  return OpenThemeDataInternal((PTHEME_FILE)hThemeFile, hwnd, pszClassList, flags);
830 }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
GLbitfield flags
Definition: glext.h:7161
static HTHEME WINAPI OpenThemeDataInternal(PTHEME_FILE ThemeFile, HWND hwnd, LPCWSTR pszClassList, DWORD flags)
Definition: system.c:735

Referenced by DrawNCPreview(), and LoadSchemeFromTheme().

◆ OpenThemeFile()

HRESULT WINAPI OpenThemeFile ( LPCWSTR  pszThemeFileName,
LPCWSTR  pszColorName,
LPCWSTR  pszSizeName,
HTHEMEFILE hThemeFile,
DWORD  unknown 
)

Definition at line 1101 of file system.c.

1104 {
1105  TRACE("(%s,%s,%s,%p,%d)\n", debugstr_w(pszThemeFileName),
1106  debugstr_w(pszColorName), debugstr_w(pszSizeName),
1107  hThemeFile, unknown);
1108 
1109  if (!g_bThemeHooksActive)
1110  return E_FAIL;
1111 
1112  return MSSTYLES_OpenThemeFile(pszThemeFileName, pszColorName, pszSizeName, (PTHEME_FILE*)hThemeFile);
1113 }
#define E_FAIL
Definition: ddrawi.h:102
#define debugstr_w
Definition: kernel32.h:32
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT MSSTYLES_OpenThemeFile(LPCWSTR lpThemeFile, LPCWSTR pszColorName, LPCWSTR pszSizeName, PTHEME_FILE *tf)
Definition: msstyles.c:54
Definition: id3.c:18
BOOL g_bThemeHooksActive
Definition: themehooks.c:15

Referenced by ActivateTheme(), DrawNCPreview(), and LoadSchemeFromTheme().

◆ ParseThemeIniFile()

HRESULT WINAPI ParseThemeIniFile ( LPCWSTR  pszIniFileName,
LPWSTR  pszUnknown,
PARSETHEMEINIFILEPROC  callback,
LPVOID  lpData 
)

Definition at line 1430 of file system.c.

1432 {
1433  FIXME("%s %s: stub\n", debugstr_w(pszIniFileName), debugstr_w(pszUnknown));
1434  return E_NOTIMPL;
1435 }
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:110
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ QueryThemeServices()

DWORD WINAPI QueryThemeServices ( void  )

Definition at line 1079 of file system.c.

1080 {
1081  FIXME("stub\n");
1082  return 3; /* This is what is returned under XP in most cases */
1083 }
#define FIXME(fmt,...)
Definition: debug.h:110

◆ ThemeHooksInstall()

BOOL WINAPI ThemeHooksInstall ( VOID  )

◆ ThemeHooksRemove()

BOOL WINAPI ThemeHooksRemove ( VOID  )