Deskflow 1.22.0.197
Keyboard and mouse sharing utility
Loading...
Searching...
No Matches
IPrimaryScreen.h
Go to the documentation of this file.
1/*
2 * Deskflow -- mouse and keyboard sharing utility
3 * SPDX-FileCopyrightText: (C) 2012 - 2016 Symless Ltd.
4 * SPDX-FileCopyrightText: (C) 2003 Chris Schoeneman
5 * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
6 */
7
8#pragma once
9
10#include "base/Event.h"
11#include "base/EventTypes.h"
12#include "common/IInterface.h"
13#include "deskflow/KeyTypes.h"
14#include "deskflow/MouseTypes.h"
15
17
22{
23public:
26 {
27 public:
29 static ButtonInfo *alloc(const ButtonInfo &);
30
31 static bool equal(const ButtonInfo *, const ButtonInfo *);
32
33 public:
36 };
37
39 {
40 public:
41 static MotionInfo *alloc(int32_t x, int32_t y);
42
43 public:
44 int32_t m_x;
45 int32_t m_y;
46 };
47
49 {
50 public:
51 static WheelInfo *alloc(int32_t xDelta, int32_t yDelta);
52
53 public:
54 int32_t m_xDelta;
55 int32_t m_yDelta;
56 };
57
59 {
60 public:
61 static HotKeyInfo *alloc(uint32_t id);
62
63 public:
64 uint32_t m_id;
65 };
66
68 {
69 public:
70 static EiConnectInfo *alloc(int fd);
71
72 public:
73 int m_fd;
74 };
75
77
78
80
86 virtual void reconfigure(uint32_t activeSides) = 0;
87
92 virtual uint32_t activeSides() = 0;
93
95
100 virtual void warpCursor(int32_t x, int32_t y) = 0;
101
103
123 virtual uint32_t registerHotKey(KeyID key, KeyModifierMask mask) = 0;
124
126
129 virtual void unregisterHotKey(uint32_t id) = 0;
130
132
138 virtual void fakeInputBegin() = 0;
139
141
144 virtual void fakeInputEnd() = 0;
145
147
149
151
155 virtual int32_t getJumpZoneSize() const = 0;
156
158
163 virtual bool isAnyMouseButtonDown(uint32_t &buttonID) const = 0;
164
166
171 virtual void getCursorCenter(int32_t &x, int32_t &y) const = 0;
172
174};
int key
Definition KeySequence.cpp:15
uint32_t KeyID
Key ID.
Definition KeyTypes.h:22
uint32_t KeyModifierMask
Modifier key mask.
Definition KeyTypes.h:45
uint8_t ButtonID
Mouse button ID.
Definition MouseTypes.h:16
int y
Definition ServerConfig.cpp:27
int x
Definition ServerConfig.cpp:26
Base class of interfaces.
Definition IInterface.h:18
Button event data.
Definition IPrimaryScreen.h:26
static ButtonInfo * alloc(ButtonID, KeyModifierMask)
Definition IPrimaryScreen.cpp:17
ButtonID m_button
Definition IPrimaryScreen.h:34
static bool equal(const ButtonInfo *, const ButtonInfo *)
Definition IPrimaryScreen.cpp:33
KeyModifierMask m_mask
Definition IPrimaryScreen.h:35
Definition IPrimaryScreen.h:68
int m_fd
Definition IPrimaryScreen.h:73
static EiConnectInfo * alloc(int fd)
Definition IPrimaryScreen.cpp:77
Hot key event data.
Definition IPrimaryScreen.h:59
uint32_t m_id
Definition IPrimaryScreen.h:64
static HotKeyInfo * alloc(uint32_t id)
Definition IPrimaryScreen.cpp:66
Motion event data.
Definition IPrimaryScreen.h:39
int32_t m_y
Definition IPrimaryScreen.h:45
int32_t m_x
Definition IPrimaryScreen.h:44
static MotionInfo * alloc(int32_t x, int32_t y)
Definition IPrimaryScreen.cpp:42
Wheel motion event data.
Definition IPrimaryScreen.h:49
int32_t m_yDelta
Definition IPrimaryScreen.h:55
static WheelInfo * alloc(int32_t xDelta, int32_t yDelta)
Definition IPrimaryScreen.cpp:54
int32_t m_xDelta
Definition IPrimaryScreen.h:54
Primary screen interface.
Definition IPrimaryScreen.h:22
virtual void warpCursor(int32_t x, int32_t y)=0
Warp cursor.
virtual void unregisterHotKey(uint32_t id)=0
Unregister a system hotkey.
virtual void getCursorCenter(int32_t &x, int32_t &y) const =0
Get cursor center position.
virtual bool isAnyMouseButtonDown(uint32_t &buttonID) const =0
Test if mouse is pressed.
virtual void fakeInputBegin()=0
Prepare to synthesize input on primary screen.
virtual void fakeInputEnd()=0
Done synthesizing input on primary screen.
virtual uint32_t registerHotKey(KeyID key, KeyModifierMask mask)=0
Register a system hotkey.
virtual int32_t getJumpZoneSize() const =0
Get jump zone size.
virtual uint32_t activeSides()=0
activeSides
virtual void reconfigure(uint32_t activeSides)=0
Update configuration.