main
h 72 lines 1.52 KB
Raw
1 #pragma once
2 // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
3
4
5 #include <windows.h>
6 #include <msiquery.h>
7 #include <objbase.h>
8 #include <shlobj.h>
9 #include <shlwapi.h>
10 #include <stdlib.h>
11 #include <strsafe.h>
12
13 #pragma warning(push)
14 #pragma warning(disable:4458)
15 #include <gdiplus.h>
16 #pragma warning(pop)
17
18 #include "dutil.h"
19 #include "apputil.h"
20 #include "memutil.h"
21 #include "dictutil.h"
22 #include "dirutil.h"
23 #include "fileutil.h"
24 #include "locutil.h"
25 #include "logutil.h"
26 #include "pathutil.h"
27 #include "resrutil.h"
28 #include "shelutil.h"
29 #include "strutil.h"
30 #include "thmutil.h"
31 #include "wndutil.h"
32
33 #include "resource.h"
34
35 struct HANDLE_THEME
36 {
37 DWORD cReferences;
38 THEME* pTheme;
39 };
40
41 enum WM_THMVWR
42 {
43 WM_THMVWR_SHOWPAGE = WM_APP,
44 WM_THMVWR_PARSE_FILE,
45 WM_THMVWR_NEW_THEME,
46 WM_THMVWR_THEME_LOAD_ERROR,
47 WM_THMVWR_THEME_LOAD_BEGIN,
48 };
49
50 extern "C" HRESULT DisplayStart(
51 __in HINSTANCE hInstance,
52 __in HWND hWnd,
53 __out HANDLE *phThread,
54 __out DWORD* pdwThreadId
55 );
56 extern "C" HRESULT LoadStart(
57 __in_z LPCWSTR wzThemePath,
58 __in_z_opt LPCWSTR wzWxlPath,
59 __in HWND hWnd,
60 __out HANDLE* phThread
61 );
62
63 extern "C" HRESULT AllocHandleTheme(
64 __in THEME* pTheme,
65 __out HANDLE_THEME** ppHandle
66 );
67 extern "C" void IncrementHandleTheme(
68 __in HANDLE_THEME* pHandle
69 );
70 extern "C" void DecrementHandleTheme(
71 __in HANDLE_THEME* pHandle
72 );