mirror of
https://github.com/reactos/reactos.git
synced 2025-06-24 11:50:17 +00:00

This PR reorganizes the location of the CTF-related modules to improve grep-ability, understanding, and readability. New folder base/ctf will become incomplete Cicero, CTF or TSF (Text Services Framework). JIRA issue: CORE-19360 JIRA issue: CORE-19361 JIRA issue: CORE-19363 - Move ctfmon, msctf, msctfime, and msutb modules to new directory base/ctf. - Adapt CMakeLists.txt to this move. - Modify .github/labeler.yml and media/doc/WINESYNC.txt. - No code content changes except CMakeLists.txt, .github/labeler.yml, and media/doc/WINESYNC.txt.
45 lines
1.3 KiB
C++
45 lines
1.3 KiB
C++
/*
|
|
* PROJECT: ReactOS CTF Monitor
|
|
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
|
|
* PURPOSE: Registry watcher
|
|
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
struct WATCHENTRY
|
|
{
|
|
HKEY hRootKey;
|
|
LPCTSTR pszSubKey;
|
|
HKEY hKey;
|
|
};
|
|
|
|
#define WATCHENTRY_MAX 12
|
|
|
|
struct CRegWatcher
|
|
{
|
|
static HANDLE s_ahWatchEvents[WATCHENTRY_MAX];
|
|
static WATCHENTRY s_WatchEntries[WATCHENTRY_MAX];
|
|
static UINT s_nSysColorTimerId, s_nKbdToggleTimerId, s_nRegImxTimerId;
|
|
|
|
static BOOL Init();
|
|
static VOID Uninit();
|
|
static BOOL InitEvent(_In_ SIZE_T iEvent, _In_ BOOL bResetEvent);
|
|
static VOID UpdateSpTip();
|
|
static VOID KillInternat();
|
|
static VOID StartSysColorChangeTimer();
|
|
static VOID OnEvent(_In_ SIZE_T iEvent);
|
|
|
|
protected:
|
|
static BOOL CALLBACK
|
|
EnumWndProc(_In_ HWND hWnd, _In_ LPARAM lParam);
|
|
|
|
static VOID CALLBACK
|
|
SysColorTimerProc(_In_ HWND hWnd, _In_ UINT uMsg, _In_ UINT_PTR idEvent, _In_ DWORD dwTime);
|
|
|
|
static VOID CALLBACK
|
|
KbdToggleTimerProc(_In_ HWND hWnd, _In_ UINT uMsg, _In_ UINT_PTR idEvent, _In_ DWORD dwTime);
|
|
|
|
static VOID CALLBACK
|
|
RegImxTimerProc(_In_ HWND hWnd, _In_ UINT uMsg, _In_ UINT_PTR idEvent, _In_ DWORD dwTime);
|
|
};
|