Rabbit Remote Control 0.0.36
Loading...
Searching...
No Matches
ParameterFreeRDP.h
1#ifndef CPARAMETERFREERDP_H
2#define CPARAMETERFREERDP_H
3
4#include "ParameterBase.h"
5#include "ParameterProxy.h"
6#include "freerdp/freerdp.h"
7
11{
12 Q_OBJECT
13 Q_PROPERTY(bool RedirectionPrinter READ GetRedirectionPrinter WRITE SetRedirectionPrinter NOTIFY sigRedirectionPrinterChanged)
14 Q_PROPERTY(UINT ReconnectInterval READ GetReconnectInterval WRITE SetReconnectInterval NOTIFY sigReconnectIntervalChanged)
15 Q_PROPERTY(RedirecionSoundType RedirectionSound READ GetRedirectionSound WRITE SetRedirectionSound NOTIFY sigRedirectionSoundChanged)
16 Q_PROPERTY(QString RedirectionSoundParameters READ GetRedirectionSoundParameters WRITE SetRedirectionSoundParameters NOTIFY sigRedirectionSoundParametersChanged)
17 Q_PROPERTY(bool RedirectionMicrophone READ GetRedirectionMicrophone WRITE SetRedirectionMicrophone NOTIFY sigRedirectionMicrophoneChanged)
18 Q_PROPERTY(QStringList RedirectionDrives READ GetRedirectionDrives WRITE SetRedirectionDrives NOTIFY sigRedirectionDrivesChanged)
19
20public:
21 explicit CParameterFreeRDP(QObject *parent = nullptr);
22
23 static QRect GetScreenGeometry();
24
25 // CParameter interface
26 virtual int OnLoad(QSettings &set) override;
27 virtual int OnSave(QSettings &set) override;
28
29public:
30
31 void SetDomain(const QString& szDomain);
32 const QString GetDomain() const;
33
34 UINT32 GetDesktopWidth() const;
35 int SetDesktopWidth(UINT32 nWidth);
36
37 UINT32 GetDesktopHeight() const;
38 int SetDesktopHeight(UINT32 nHeight);
39
40 UINT32 GetColorDepth() const;
41 int SetColorDepth(UINT32 color);
42
43 bool GetUseMultimon() const;
44 int SetUseMultimon(bool bUse);
45
46 UINT GetReconnectInterval() const;
47 void SetReconnectInterval(UINT newReconnectInterval);
48
49 bool GetShowVerifyDiaglog() const;
50 void SetShowVerifyDiaglog(bool bShow);
51
52 enum class RedirecionSoundType {
53 Disable,
54 Local,
55 Remote
56 };
57 Q_ENUM(RedirecionSoundType)
58 RedirecionSoundType GetRedirectionSound() const;
59 void SetRedirectionSound(RedirecionSoundType newRedirectionSound);
60 bool GetRedirectionMicrophone() const;
61 void SetRedirectionMicrophone(bool newRedirectionMicrophone);
62 QStringList GetRedirectionDrives() const;
63 void SetRedirectionDrives(const QStringList &newRedirectionDrive);
64
65 bool GetRedirectionPrinter() const;
66 void SetRedirectionPrinter(bool newRedirectionPrinter);
67
68 const QString &GetRedirectionSoundParameters() const;
69 void SetRedirectionSoundParameters(const QString &newRedirectionSoundParameters);
70
71 const QString &GetRedirectionMicrophoneParameters() const;
72 void SetRedirectionMicrophoneParameters(const QString &newRedirectionMicrophoneParameters);
73
74 bool GetNegotiateSecurityLayer() const;
75 void SetNegotiateSecurityLayer(bool newNegotiateSecurityLayer);
76 enum Security{
77 RDP = 0x01, /* Standard RDP */
78 TLS = 0x02, /* TLS */
79 NLA = 0x04, /* NLA */
80 NLA_Ext = 0x08, /* NLA Extended */
81 RDSAAD = 0x10, /* RDSAAD */
82 RDSTLS = 0x20 /* RDSTLS */
83 };
84 Q_ENUM(Security)
85 Security GetSecurity() const;
86 void SetSecurity(Security newSecurity);
87
88 UINT16 GetTlsVersion() const;
89 void SetTlsVersion(UINT16 newTlsVersion);
90
91 UINT32 GetConnectType() const;
92 void SetConnectType(UINT32 newConnectType);
93
94 UINT32 GetPerformanceFlags() const;
95 void SetPerformanceFlags(UINT32 newPerformanceFlags);
96
97signals:
98 void sigReconnectIntervalChanged();
99
100 void sigRedirectionSoundChanged(RedirecionSoundType RedirectionSound);
101 void sigRedirectionSoundParametersChanged();
102 void sigRedirectionMicrophoneChanged(bool RedirectionMicrophone);
103 void sigRedirectionMicrophoneParametersChanged();
104 void sigRedirectionDrivesChanged(QStringList RedirectionDrive);
105 void sigRedirectionPrinterChanged(bool RedirectionPrinter);
106
107private:
108 QString m_szDomain;
109
110 UINT32 m_nWidth;
111 UINT32 m_nHeight;
112
113 UINT32 m_nColorDepth;
114 bool m_bUseMultimon;
115
116 UINT32 m_nReconnectInterval; // Unit: second
117 bool m_bShowVerifyDiaglog;
118
119 bool m_bRedirectionPrinter;
120 RedirecionSoundType m_nRedirectionSound;
121 QString m_szRedirectionSoundParameters;
122 bool m_bRedirectionMicrophone;
123 QString m_szRedirectionMicrophoneParameters;
124 QStringList m_lstRedirectionDrives;
125 Q_PROPERTY(QString RedirectionMicrophoneParameters READ GetRedirectionMicrophoneParameters WRITE SetRedirectionMicrophoneParameters NOTIFY sigRedirectionMicrophoneParametersChanged)
126
127 bool m_bNegotiateSecurityLayer;
128 Security m_Security;
129 UINT16 m_tlsVersion;
130
131 UINT32 m_ConnectType;
132 UINT32 m_PerformanceFlags;
133};
134
135#endif // CPARAMETERFREERDP_H
The interface of connecter parameters.
[Declare CParameterFreeRDP]