Libmacro  0.2
Libmacro is an extensible macro and hotkey library.
p_intercept.h
Go to the documentation of this file.
1 /* Libmacro - A multi-platform, extendable macro and hotkey C library
2  Copyright (C) 2013 Jonathan Pelletier, New Paradigm Software
3 
4  This library is free software; you can redistribute it and/or
5  modify it under the terms of the GNU Lesser General Public
6  License as published by the Free Software Foundation; either
7  version 2.1 of the License, or (at your option) any later version.
8 
9  This library is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  Lesser General Public License for more details.
13 
14  You should have received a copy of the GNU Lesser General Public
15  License along with this library; if not, write to the Free Software
16  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17 */
18 
23 #ifndef MCR_INTERCEPT_WIN_NINTERCEPT_H_
24 #define MCR_INTERCEPT_WIN_NINTERCEPT_H_
25 
26 #include "mcr/standard/standard.h"
27 #include "mcr/standard/windows/p_standard.h"
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 // Last index is count - 1
34 #define MCR_WM_HIDECHO_COUNT (WM_MOUSELAST - WM_MOUSEFIRST + 1)
35 #define MCR_WM_HIDECHO_INDEX(wParam) (wParam - WM_MOUSEFIRST)
36 
43  size_t wm_echos[MCR_WM_HIDECHO_COUNT];
44 };
45 
48 extern MCR_API const size_t *const mcr_intercept_wm_echo_defaults;
49 
50 MCR_API bool mcr_intercept_key_enabled(struct mcr_context *ctx);
51 MCR_API int mcr_intercept_key_set_enabled(struct mcr_context *ctx, bool enable);
52 MCR_API bool mcr_intercept_mouse_enabled(struct mcr_context *ctx);
53 MCR_API int mcr_intercept_mouse_set_enabled(struct mcr_context *ctx, bool enable);
54 MCR_API int mcr_intercept_set_wm_echo(struct mcr_context *ctx, WPARAM wm, size_t echoCode);
55 
56 #ifdef __cplusplus
57 }
58 #endif
59 
60 #endif
size_t wm_echos[(WM_MOUSELAST - WM_MOUSEFIRST+1)]
Definition: p_intercept.h:43
MCR_API const size_t *const mcr_intercept_wm_echo_defaults
Standard signal and trigger types.