Changeset 2755 for trunk/synergy/lib/platform/CPMSynergyHook.h
- Timestamp:
- Jul 31, 2006, 5:21:38 AM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/synergy/lib/platform/CPMSynergyHook.h
r2752 r2755 2 2 * synergy -- mouse and keyboard sharing utility 3 3 * Copyright (C) 2002 Chris Schoeneman 4 * 4 * Copyright (C) 2006 Knut St. Osmundsen 5 * 5 6 * This package is free software; you can redistribute it and/or 6 7 * modify it under the terms of the GNU General Public License 7 8 * found in the file COPYING that should have accompanied this file. 8 * 9 * 9 10 * This package is distributed in the hope that it will be useful, 10 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of … … 23 24 24 25 #if defined(SYNRGYHK_EXPORTS) 25 # define CSYNERGYHOOK_API __declspec(dllexport)26 # define CSYNERGYHOOK_API extern "C" __declspec(dllexport) 26 27 #else 27 # define CSYNERGYHOOK_API __declspec(dllimport)28 # define CSYNERGYHOOK_API extern "C" __declspec(dllimport) 28 29 #endif 29 30 30 #define SYNERGY_MSG_MARK WM_USER + 0x0011 // mark id; <unused> 31 #define SYNERGY_MSG_KEY WM_USER + 0x0012 // vk code; key data 32 #define SYNERGY_MSG_MOUSE_BUTTON WM_USER + 0x0013 // button msg; <unused> 33 #define SYNERGY_MSG_MOUSE_WHEEL WM_USER + 0x0014 // delta; <unused> 34 #define SYNERGY_MSG_MOUSE_MOVE WM_USER + 0x0015 // x; y 35 #define SYNERGY_MSG_POST_WARP WM_USER + 0x0016 // <unused>; <unused> 36 #define SYNERGY_MSG_PRE_WARP WM_USER + 0x0017 // x; y 37 #define SYNERGY_MSG_SCREEN_SAVER WM_USER + 0x0018 // activated; <unused> 38 #define SYNERGY_MSG_DEBUG WM_USER + 0x0019 // data, data 39 #define SYNERGY_MSG_INPUT_FIRST SYNERGY_MSG_KEY 40 #define SYNERGY_MSG_INPUT_LAST SYNERGY_MSG_PRE_WARP 41 #define SYNERGY_HOOK_LAST_MSG SYNERGY_MSG_DEBUG 31 /** @name The messages posted from the input hook on the synergy message queue. 32 * @{ 33 */ 34 #define SYNERGY_PM_MSG_MARK WM_USER + 20 // mark id; <unused> 35 #define SYNERGY_PM_MSG_KEY WM_USER + 21 // vk code; key data 36 /** 37 * mp1.s1: msg 38 * mp1.s2: 0 reserved. 39 * mp2.s1: mouse x 40 * mp2.s2: mouse y 41 */ 42 #define SYNERGY_PM_MSG_MOUSE_BUTTON WM_USER + 22 43 /** WM_MOUSEMOVE mp1 and mp2. */ 44 #define SYNERGY_PM_MSG_MOUSE_MOVE WM_USER + 23 42 45 43 #define SYNERGY_HOOK_FAKE_INPUT_VIRTUAL_KEY VK_CANCEL 44 #define SYNERGY_HOOK_FAKE_INPUT_SCANCODE 0 46 #define SYNERGY_PM_MSG_POST_WARP WM_USER + 24 // <unused>; <unused> 47 #define SYNERGY_PM_MSG_PRE_WARP WM_USER + 25 // x; y 48 #define SYNERGY_PM_MSG_DEBUG WM_USER + 27 // data, data 45 49 46 extern "C" { 50 #define SYNERGY_PM_MSG_FIRST SYNERGY_PM_MSG_MARK /**< The first message. */ 51 #define SYNERGY_PM_MSG_LAST SYNERGY_PM_MSG_DEBUG /**< The last message. */ 52 #define SYNERGY_PM_MSG_INPUT_FIRST SYNERGY_PM_MSG_KEY /**< The first input message. */ 53 #define SYNERGY_PM_MSG_INPUT_LAST SYNERGY_PM_MSG_PRE_WARP /**< The last input message. */ 54 /** @} */ 55 56 #define SYNERGY_PM_HOOK_FAKE_INPUT_MP1_FIXED MPFROM2SHORT(KC_VIRTUALKEY | KC_SCANCODE, 0) 57 #define SYNERGY_PM_HOOK_FAKE_INPUT_MP2_SET MPFROM2SHORT(0x8f70, 0x708f) 58 #define SYNERGY_PM_HOOK_FAKE_INPUT_MP2_CLEAR MPFROM2SHORT(0x9f70, 0x708f) 47 59 48 60 enum EHookResult { 49 50 51 61 kHOOK_FAILED, 62 kHOOK_OKAY, 63 kHOOK_OKAY_LL 52 64 }; 53 65 54 66 enum EHookMode { 55 56 57 67 kHOOK_DISABLE, 68 kHOOK_WATCH_JUMP_ZONE, 69 kHOOK_RELAY_EVENTS 58 70 }; 59 71 60 typedef int (*InitFunc)(HMQ hmq, int tid, int pid); 61 typedef int (*CleanupFunc)(void); 62 typedef EHookResult (*InstallFunc)(void); 63 typedef int (*UninstallFunc)(void); 64 typedef int (*InstallScreenSaverFunc)(void); 65 typedef int (*UninstallScreenSaverFunc)(void); 66 typedef void (*SetSidesFunc)(UInt32); 67 typedef void (*SetZoneFunc)(SInt32, SInt32, SInt32, SInt32, SInt32); 68 typedef void (*SetModeFunc)(int); 72 typedef bool (*InitFunc)(HMQ hmq, int tid, int pid); 73 typedef bool (*CleanupFunc)(HAB hab); 74 typedef EHookResult (*InstallFunc)(HAB hab); 75 typedef bool (*UninstallFunc)(HAB hab); 76 typedef void (*SetSidesFunc)(UInt32); 77 typedef void (*SetZoneFunc)(SInt32, SInt32, SInt32, SInt32, SInt32); 78 typedef void (*SetModeFunc)(int); 69 79 70 CSYNERGYHOOK_API int init(HMQ hmq, int tid, int pid); 71 CSYNERGYHOOK_API int cleanup(void); 72 CSYNERGYHOOK_API EHookResult install(void); 73 CSYNERGYHOOK_API int uninstall(void); 74 CSYNERGYHOOK_API int installScreenSaver(void); 75 CSYNERGYHOOK_API int uninstallScreenSaver(void); 76 CSYNERGYHOOK_API void setSides(UInt32 sides); 77 CSYNERGYHOOK_API void setZone(SInt32 x, SInt32 y, SInt32 cx, SInt32 cy, SInt32 jumpZoneSize); 78 CSYNERGYHOOK_API void setMode(EHookMode mode); 79 80 } 80 CSYNERGYHOOK_API bool init(HMQ hmq, int tid, int pid); 81 CSYNERGYHOOK_API bool cleanup(HAB hab); 82 CSYNERGYHOOK_API EHookResult install(HAB hab); 83 CSYNERGYHOOK_API bool uninstall(HAB hab); 84 CSYNERGYHOOK_API void setSides(UInt32 sides); 85 CSYNERGYHOOK_API void setZone(SInt32 x, SInt32 y, SInt32 cx, SInt32 cy, SInt32 jumpZoneSize); 86 CSYNERGYHOOK_API void setMode(EHookMode mode); 81 87 82 88 #endif
Note:
See TracChangeset
for help on using the changeset viewer.