aboutsummaryrefslogtreecommitdiff
path: root/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-04-22 05:46:03 -0700
committerRob Mensching <rob@firegiant.com>2021-04-29 16:41:44 -0700
commitc00516901e6b67e398396b14fe7682d0376f8643 (patch)
treeb0d62089a1c5700c7f2c3e3790750bf2d8ea33c0 /src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
parent8eb98efd2175d9ece2e4639d43081667af9a4990 (diff)
downloadwix-c00516901e6b67e398396b14fe7682d0376f8643.tar.gz
wix-c00516901e6b67e398396b14fe7682d0376f8643.tar.bz2
wix-c00516901e6b67e398396b14fe7682d0376f8643.zip
Move balutil into API/burn
Diffstat (limited to 'src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h')
-rw-r--r--src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h124
1 files changed, 124 insertions, 0 deletions
diff --git a/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h b/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
new file mode 100644
index 00000000..7e89fe83
--- /dev/null
+++ b/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
@@ -0,0 +1,124 @@
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 "BalBaseBootstrapperApplicationProc.h"
6#include "BAFunctions.h"
7#include "IBAFunctions.h"
8
9static HRESULT BalBaseBAFunctionsProcOnThemeLoaded(
10 __in IBAFunctions* pBAFunctions,
11 __in BA_FUNCTIONS_ONTHEMELOADED_ARGS* pArgs,
12 __inout BA_FUNCTIONS_ONTHEMELOADED_RESULTS* /*pResults*/
13 )
14{
15 return pBAFunctions->OnThemeLoaded(pArgs->pTheme, pArgs->pWixLoc);
16}
17
18static HRESULT BalBaseBAFunctionsProcWndProc(
19 __in IBAFunctions* pBAFunctions,
20 __in BA_FUNCTIONS_WNDPROC_ARGS* pArgs,
21 __inout BA_FUNCTIONS_WNDPROC_RESULTS* pResults
22 )
23{
24 return pBAFunctions->WndProc(pArgs->pTheme, pArgs->hWnd, pArgs->uMsg, pArgs->wParam, pArgs->lParam, &pResults->lres);
25}
26
27/*******************************************************************
28BalBaseBAFunctionsProc - requires pvContext to be of type IBAFunctions.
29Provides a default mapping between the message based BAFunctions interface and
30the COM-based BAFunctions interface.
31
32*******************************************************************/
33static HRESULT WINAPI BalBaseBAFunctionsProc(
34 __in BA_FUNCTIONS_MESSAGE message,
35 __in const LPVOID pvArgs,
36 __inout LPVOID pvResults,
37 __in_opt LPVOID pvContext
38 )
39{
40 IBAFunctions* pBAFunctions = reinterpret_cast<IBAFunctions*>(pvContext);
41 HRESULT hr = pBAFunctions->BAFunctionsProc(message, pvArgs, pvResults, pvContext);
42
43 if (E_NOTIMPL == hr)
44 {
45 switch (message)
46 {
47 case BA_FUNCTIONS_MESSAGE_ONDETECTBEGIN:
48 case BA_FUNCTIONS_MESSAGE_ONDETECTCOMPLETE:
49 case BA_FUNCTIONS_MESSAGE_ONPLANBEGIN:
50 case BA_FUNCTIONS_MESSAGE_ONPLANCOMPLETE:
51 case BA_FUNCTIONS_MESSAGE_ONSTARTUP:
52 case BA_FUNCTIONS_MESSAGE_ONSHUTDOWN:
53 case BA_FUNCTIONS_MESSAGE_ONSYSTEMSHUTDOWN:
54 case BA_FUNCTIONS_MESSAGE_ONDETECTFORWARDCOMPATIBLEBUNDLE:
55 case BA_FUNCTIONS_MESSAGE_ONDETECTUPDATEBEGIN:
56 case BA_FUNCTIONS_MESSAGE_ONDETECTUPDATE:
57 case BA_FUNCTIONS_MESSAGE_ONDETECTUPDATECOMPLETE:
58 case BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDBUNDLE:
59 case BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGEBEGIN:
60 case BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDMSIPACKAGE:
61 case BA_FUNCTIONS_MESSAGE_ONDETECTPATCHTARGET:
62 case BA_FUNCTIONS_MESSAGE_ONDETECTMSIFEATURE:
63 case BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGECOMPLETE:
64 case BA_FUNCTIONS_MESSAGE_ONPLANRELATEDBUNDLE:
65 case BA_FUNCTIONS_MESSAGE_ONPLANPACKAGEBEGIN:
66 case BA_FUNCTIONS_MESSAGE_ONPLANPATCHTARGET:
67 case BA_FUNCTIONS_MESSAGE_ONPLANMSIFEATURE:
68 case BA_FUNCTIONS_MESSAGE_ONPLANPACKAGECOMPLETE:
69 case BA_FUNCTIONS_MESSAGE_ONAPPLYBEGIN:
70 case BA_FUNCTIONS_MESSAGE_ONELEVATEBEGIN:
71 case BA_FUNCTIONS_MESSAGE_ONELEVATECOMPLETE:
72 case BA_FUNCTIONS_MESSAGE_ONPROGRESS:
73 case BA_FUNCTIONS_MESSAGE_ONERROR:
74 case BA_FUNCTIONS_MESSAGE_ONREGISTERBEGIN:
75 case BA_FUNCTIONS_MESSAGE_ONREGISTERCOMPLETE:
76 case BA_FUNCTIONS_MESSAGE_ONCACHEBEGIN:
77 case BA_FUNCTIONS_MESSAGE_ONCACHEPACKAGEBEGIN:
78 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIREBEGIN:
79 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIREPROGRESS:
80 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIRERESOLVING:
81 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIRECOMPLETE:
82 case BA_FUNCTIONS_MESSAGE_ONCACHEVERIFYBEGIN:
83 case BA_FUNCTIONS_MESSAGE_ONCACHEVERIFYCOMPLETE:
84 case BA_FUNCTIONS_MESSAGE_ONCACHEPACKAGECOMPLETE:
85 case BA_FUNCTIONS_MESSAGE_ONCACHECOMPLETE:
86 case BA_FUNCTIONS_MESSAGE_ONEXECUTEBEGIN:
87 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPACKAGEBEGIN:
88 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPATCHTARGET:
89 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPROGRESS:
90 case BA_FUNCTIONS_MESSAGE_ONEXECUTEMSIMESSAGE:
91 case BA_FUNCTIONS_MESSAGE_ONEXECUTEFILESINUSE:
92 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPACKAGECOMPLETE:
93 case BA_FUNCTIONS_MESSAGE_ONEXECUTECOMPLETE:
94 case BA_FUNCTIONS_MESSAGE_ONUNREGISTERBEGIN:
95 case BA_FUNCTIONS_MESSAGE_ONUNREGISTERCOMPLETE:
96 case BA_FUNCTIONS_MESSAGE_ONAPPLYCOMPLETE:
97 case BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXEBEGIN:
98 case BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXECOMPLETE:
99 case BA_FUNCTIONS_MESSAGE_ONPLANMSIPACKAGE:
100 case BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONBEGIN:
101 case BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONCOMPLETE:
102 case BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONBEGIN:
103 case BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONCOMPLETE:
104 case BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONBEGIN:
105 case BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONCOMPLETE:
106 case BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESBEGIN:
107 case BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE:
108 case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN:
109 case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE:
110 case BA_FUNCTIONS_MESSAGE_ONPLANNEDPACKAGE:
111 case BA_FUNCTIONS_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE:
112 hr = BalBaseBootstrapperApplicationProc((BOOTSTRAPPER_APPLICATION_MESSAGE)message, pvArgs, pvResults, pvContext);
113 break;
114 case BA_FUNCTIONS_MESSAGE_ONTHEMELOADED:
115 hr = BalBaseBAFunctionsProcOnThemeLoaded(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_ONTHEMELOADED_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_ONTHEMELOADED_RESULTS*>(pvResults));
116 break;
117 case BA_FUNCTIONS_MESSAGE_WNDPROC:
118 hr = BalBaseBAFunctionsProcWndProc(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_WNDPROC_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_WNDPROC_RESULTS*>(pvResults));
119 break;
120 }
121 }
122
123 return hr;
124}