Libmacro  0.2
Libmacro is an extensible macro and hotkey library.
action.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_STANDARD_ACTION_H_
24 #define MCR_STANDARD_ACTION_H_
25 
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
33 struct mcr_Action {
35  unsigned int modifiers;
37  unsigned int trigger_flags;
38 };
39 
45 MCR_API void mcr_Action_init(struct mcr_Action *actPt);
52 MCR_API int mcr_Action_init_(void *ptr);
53 /* Default allocate, deallocate, deinit, compare, and copy */
54 
58 MCR_API bool mcr_Action_receive(struct mcr_Trigger *trigPt,
59  struct mcr_Signal *sigPt,
60  unsigned int mods);
61 
63 MCR_API struct mcr_ITrigger *mcr_iAction(struct mcr_context *ctx);
65 #define mcr_Action_data(trigPt) \
66 mcr_castpt(struct mcr_Action, mcr_Trigger_data(trigPt))
67 
68 #ifdef __cplusplus
69 }
70 #endif
71 
72 #endif
MCR_API void mcr_Action_init(struct mcr_Action *actPt)
MCR_API bool mcr_Action_receive(struct mcr_Trigger *trigPt, struct mcr_Signal *sigPt, unsigned int mods)
mcr_ITrigger::receive for mcr_Action
mcr_TriggerFlags - Enumerates behavior of triggering modifiers
MCR_API int mcr_Action_init_(void *ptr)
unsigned int modifiers
Definition: action.h:35
MCR_API struct mcr_ITrigger * mcr_iAction(struct mcr_context *ctx)
unsigned int trigger_flags
Definition: action.h:37