玉兔远程控制 0.0.36
载入中...
搜索中...
未找到
CursorFreeRDP.h
1// Author: Kang Lin <kl222@126.com>
2
3#ifndef CCURSOR_H
4#define CCURSOR_H
5
6#include <QLoggingCategory>
7#include <QImage>
8#include <QRect>
9#include <QObject>
10#include "freerdp/version.h"
11#include "freerdp/freerdp.h"
12
13class CConnectFreeRDP;
14class CCursorFreeRDP : public QObject
15{
16 Q_OBJECT
17public:
18 explicit CCursorFreeRDP(CConnectFreeRDP *parent = nullptr);
19
20 int RegisterPointer(rdpGraphics* graphics);
21 struct _Pointer{
22 rdpPointer pointer;
23 CCursorFreeRDP* pThis;
24 };
25
26 static BOOL cb_Pointer_New(rdpContext* context, rdpPointer* pointer);
27 static void cb_Pointer_Free(rdpContext* context, rdpPointer* pointer);
28 static BOOL cb_Pointer_Set(rdpContext* context,
29 #if FREERDP_VERSION_MAJOR >= 3
30 rdpPointer* pointer
31 #else
32 const rdpPointer* pointer
33 #endif
34 );
35 static BOOL cb_Pointer_SetNull(rdpContext* context);
36 static BOOL cb_Pointer_SetDefault(rdpContext* context);
37 static BOOL cb_Pointer_SetPosition(rdpContext* context, UINT32 x, UINT32 y);
38
39 BOOL onNew(rdpContext* context, rdpPointer* pointer);
40 void onFree(rdpContext* context, rdpPointer* pointer);
41 BOOL onSet(rdpContext* context, const rdpPointer* pointer);
42 BOOL onSetNull(rdpContext* context);
43 BOOL onSetDefault(rdpContext* context);
44 BOOL onSetPosition(rdpContext* context, UINT32 x, UINT32 y);
45
46private:
47 CConnectFreeRDP* m_pConnect;
48
49 QImage m_Cursor;
50 QLoggingCategory m_Logger;
51};
52
53#endif // CCURSOR_H
BOOL onNew(rdpContext *context, rdpPointer *pointer)
BOOL onSet(rdpContext *context, const rdpPointer *pointer)