diff options
Diffstat (limited to 'src/libs/dutil/WixToolset.DUtil/inc/thmutil.h')
-rw-r--r-- | src/libs/dutil/WixToolset.DUtil/inc/thmutil.h | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h b/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h index 9557c11c..eda81485 100644 --- a/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h +++ b/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h | |||
@@ -6,6 +6,10 @@ | |||
6 | extern "C" { | 6 | extern "C" { |
7 | #endif | 7 | #endif |
8 | 8 | ||
9 | // forward declare | ||
10 | |||
11 | typedef struct _THEME THEME; | ||
12 | |||
9 | #define ReleaseTheme(p) if (p) { ThemeFree(p); p = NULL; } | 13 | #define ReleaseTheme(p) if (p) { ThemeFree(p); p = NULL; } |
10 | 14 | ||
11 | typedef HRESULT(CALLBACK *PFNTHM_EVALUATE_VARIABLE_CONDITION)( | 15 | typedef HRESULT(CALLBACK *PFNTHM_EVALUATE_VARIABLE_CONDITION)( |
@@ -111,6 +115,10 @@ typedef enum _WM_THMUTIL | |||
111 | // wparam is THEME_CONTROLWMNOTIFY_ARGS* and lparam is THEME_CONTROLWMNOTIFY_RESULTS*. | 115 | // wparam is THEME_CONTROLWMNOTIFY_ARGS* and lparam is THEME_CONTROLWMNOTIFY_RESULTS*. |
112 | // Return code is TRUE to prevent further processing of the message. | 116 | // Return code is TRUE to prevent further processing of the message. |
113 | WM_THMUTIL_CONTROL_WM_NOTIFY = WM_APP - 3, | 117 | WM_THMUTIL_CONTROL_WM_NOTIFY = WM_APP - 3, |
118 | // Sent after created a control. | ||
119 | // wparam is THEME_LOADEDCONTROL_ARGS* and lparam is THEME_LOADEDCONTROL_RESULTS*. | ||
120 | // Return code is TRUE if it was processed. | ||
121 | WM_THMUTIL_LOADED_CONTROL = WM_APP - 4, | ||
114 | } WM_THMUTIL; | 122 | } WM_THMUTIL; |
115 | 123 | ||
116 | struct THEME_COLUMN | 124 | struct THEME_COLUMN |
@@ -287,6 +295,7 @@ struct THEME_CONTROL | |||
287 | // state variables that should be ignored | 295 | // state variables that should be ignored |
288 | HWND hWnd; | 296 | HWND hWnd; |
289 | DWORD dwData; // type specific data | 297 | DWORD dwData; // type specific data |
298 | THEME* pTheme; | ||
290 | }; | 299 | }; |
291 | 300 | ||
292 | 301 | ||
@@ -340,7 +349,7 @@ struct THEME_FONT | |||
340 | }; | 349 | }; |
341 | 350 | ||
342 | 351 | ||
343 | struct THEME | 352 | typedef struct _THEME |
344 | { | 353 | { |
345 | WORD wNextControlId; | 354 | WORD wNextControlId; |
346 | 355 | ||
@@ -403,7 +412,7 @@ struct THEME | |||
403 | PFNTHM_SET_VARIABLE_STRING pfnSetStringVariable; | 412 | PFNTHM_SET_VARIABLE_STRING pfnSetStringVariable; |
404 | 413 | ||
405 | LPVOID pvVariableContext; | 414 | LPVOID pvVariableContext; |
406 | }; | 415 | } THEME; |
407 | 416 | ||
408 | typedef struct _THEME_CONTROLWMCOMMAND_ARGS | 417 | typedef struct _THEME_CONTROLWMCOMMAND_ARGS |
409 | { | 418 | { |
@@ -431,6 +440,18 @@ typedef struct _THEME_CONTROLWMNOTIFY_RESULTS | |||
431 | LRESULT lResult; | 440 | LRESULT lResult; |
432 | } THEME_CONTROLWMNOTIFY_RESULTS; | 441 | } THEME_CONTROLWMNOTIFY_RESULTS; |
433 | 442 | ||
443 | typedef struct _THEME_LOADEDCONTROL_ARGS | ||
444 | { | ||
445 | DWORD cbSize; | ||
446 | const THEME_CONTROL* pThemeControl; | ||
447 | } THEME_LOADEDCONTROL_ARGS; | ||
448 | |||
449 | typedef struct _THEME_LOADEDCONTROL_RESULTS | ||
450 | { | ||
451 | DWORD cbSize; | ||
452 | HRESULT hr; | ||
453 | } THEME_LOADEDCONTROL_RESULTS; | ||
454 | |||
434 | typedef struct _THEME_LOADINGCONTROL_ARGS | 455 | typedef struct _THEME_LOADINGCONTROL_ARGS |
435 | { | 456 | { |
436 | DWORD cbSize; | 457 | DWORD cbSize; |
@@ -528,24 +549,6 @@ HRESULT DAPI ThemeCreateParentWindow( | |||
528 | ); | 549 | ); |
529 | 550 | ||
530 | /******************************************************************** | 551 | /******************************************************************** |
531 | ThemeLoadControls - creates the windows for all the theme controls | ||
532 | using the window created in ThemeCreateParentWindow. | ||
533 | |||
534 | *******************************************************************/ | ||
535 | HRESULT DAPI ThemeLoadControls( | ||
536 | __in THEME* pTheme | ||
537 | ); | ||
538 | |||
539 | /******************************************************************** | ||
540 | ThemeUnloadControls - resets all the theme control windows so the theme | ||
541 | controls can be reloaded. | ||
542 | |||
543 | *******************************************************************/ | ||
544 | void DAPI ThemeUnloadControls( | ||
545 | __in THEME* pTheme | ||
546 | ); | ||
547 | |||
548 | /******************************************************************** | ||
549 | ThemeLocalize - Localizes all of the strings in the theme. | 552 | ThemeLocalize - Localizes all of the strings in the theme. |
550 | 553 | ||
551 | *******************************************************************/ | 554 | *******************************************************************/ |