Ignore:
Timestamp:
Jul 31, 2006, 5:21:38 AM (19 years ago)
Author:
bird
Message:

bedtime

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/synergy/lib/platform/CPMSynergyHook.h

    r2752 r2755  
    22 * synergy -- mouse and keyboard sharing utility
    33 * Copyright (C) 2002 Chris Schoeneman
    4  *
     4 * Copyright (C) 2006 Knut St. Osmundsen
     5 *
    56 * This package is free software; you can redistribute it and/or
    67 * modify it under the terms of the GNU General Public License
    78 * found in the file COPYING that should have accompanied this file.
    8  * 
     9 *
    910 * This package is distributed in the hope that it will be useful,
    1011 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     
    2324
    2425#if defined(SYNRGYHK_EXPORTS)
    25 # define CSYNERGYHOOK_API __declspec(dllexport)
     26# define CSYNERGYHOOK_API extern "C" __declspec(dllexport)
    2627#else
    27 # define CSYNERGYHOOK_API __declspec(dllimport)
     28# define CSYNERGYHOOK_API extern "C" __declspec(dllimport)
    2829#endif
    2930
    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
    4245
    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
    4549
    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)
    4759
    4860enum EHookResult {
    49         kHOOK_FAILED,
    50         kHOOK_OKAY,
    51         kHOOK_OKAY_LL
     61    kHOOK_FAILED,
     62    kHOOK_OKAY,
     63    kHOOK_OKAY_LL
    5264};
    5365
    5466enum EHookMode {
    55         kHOOK_DISABLE,
    56         kHOOK_WATCH_JUMP_ZONE,
    57         kHOOK_RELAY_EVENTS
     67    kHOOK_DISABLE,
     68    kHOOK_WATCH_JUMP_ZONE,
     69    kHOOK_RELAY_EVENTS
    5870};
    5971
    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);
     72typedef bool            (*InitFunc)(HMQ hmq, int tid, int pid);
     73typedef bool            (*CleanupFunc)(HAB hab);
     74typedef EHookResult     (*InstallFunc)(HAB hab);
     75typedef bool            (*UninstallFunc)(HAB hab);
     76typedef void            (*SetSidesFunc)(UInt32);
     77typedef void            (*SetZoneFunc)(SInt32, SInt32, SInt32, SInt32, SInt32);
     78typedef void            (*SetModeFunc)(int);
    6979
    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 }
     80CSYNERGYHOOK_API bool   init(HMQ hmq, int tid, int pid);
     81CSYNERGYHOOK_API bool   cleanup(HAB hab);
     82CSYNERGYHOOK_API EHookResult install(HAB hab);
     83CSYNERGYHOOK_API bool   uninstall(HAB hab);
     84CSYNERGYHOOK_API void   setSides(UInt32 sides);
     85CSYNERGYHOOK_API void   setZone(SInt32 x, SInt32 y, SInt32 cx, SInt32 cy, SInt32 jumpZoneSize);
     86CSYNERGYHOOK_API void   setMode(EHookMode mode);
    8187
    8288#endif
Note: See TracChangeset for help on using the changeset viewer.