玉兔远程控制 0.1.0-bate5
载入中...
搜索中...
未找到
ParameterPlugin.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include "RabbitCommonTools.h"
4#include "ParameterPlugin.h"
5
6CParameterPlugin::CParameterPlugin(QObject *parent)
7 : CParameter(parent)
8 , m_bCaptureAllKeyboard(true)
9 , m_bDesktopShortcutsScript(false)
10 , m_bEnableLocalInputMethod(false)
11 , m_bPromptAdministratorPrivilege(!RabbitCommon::CTools::Instance()->HasAdministratorPrivilege())
12 , m_bEnableSystemUserToUser(true)
13 , m_bSavePassword(false)
14 , m_PromptType(PromptType::First)
15 , m_nPromptCount(0)
16 , m_bViewPassowrd(false)
17 , m_bUseSystemCredential(true)
18 , m_bShowProtocolPrefix(false)
19 , m_bShowIpPortInName(false)
20 , m_AdaptWindows(CFrmViewer::ADAPT_WINDOWS::KeepAspectRationToWindow)
21 , m_Record(this)
22 , m_MediaDevices(this)
23#if defined(HAVE_QTERMWIDGET)
24 , m_Terminal(this)
25#endif
26{}
27
28CParameterPlugin::~CParameterPlugin()
29{}
30
31int CParameterPlugin::OnLoad(QSettings &set)
32{
33 set.beginGroup("Client");
34 SetCaptureAllKeyboard(
35 set.value("CaptureAllKeyboard", GetCaptureAllKeyboard()).toBool());
36 SetDesktopShortcutsScript(set.value("DesktopShortcutsScript/Enable",
37 GetDesktopShortcutsScript()).toBool());
38 SetDisableDesktopShortcutsScript(
39 set.value("DesktopShortcutsScript/Disable",
40 GetDisableDesktopShortcutsScript()).toString());
41 SetRestoreDesktopShortcutsScript(
42 set.value("DesktopShortcutsScript/Restore",
43 GetRestoreDesktopShortcutsScript()).toString());
44 SetEnableLocalInputMethod(set.value("InputMethod", GetEnableLocalInputMethod()).toBool());
45 // Note: SetShowHookAdministratorPrivilege must precede SetHookKeyboard
46 SetPromptAdministratorPrivilege(
47 set.value("AdministratorPrivilege/Prompt",
48 GetPromptAdministratorPrivilege()).toBool());
49 SetEnableSystemUserToUser(set.value("UserName/Enable",
50 GetEnableSystemUserToUser()).toBool());
51 SetPromptType(static_cast<PromptType>(
52 set.value("Password/Prompty/Type",
53 static_cast<int>(GetPromptType())).toInt()
54 ));
55 SetSavePassword(set.value("Password/Save", GetSavePassword()).toBool());
56 SetViewPassowrd(set.value("Password/View", GetViewPassowrd()).toBool());
57 SetUseSystemCredential(set.value("Password/UseSystemCredential", GetUseSystemCredential()).toBool());
58 SetShowProtocolPrefix(set.value("Connecter/Name/ShowProtocolPrefix", GetShowProtocolPrefix()).toBool());
59 SetShowIpPortInName(set.value("Connecter/Name/ShowIpPort", GetShowIpPortInName()).toBool());
60 SetAdaptWindows((CFrmViewer::ADAPT_WINDOWS)set.value("Viewer/AdaptWindows",
61 (int)GetAdaptWindows()).toInt());
62 set.endGroup();
63 return 0;
64}
65
66int CParameterPlugin::OnSave(QSettings& set)
67{
68 set.beginGroup("Client");
69 set.setValue("CaptureAllKeyboard", GetCaptureAllKeyboard());
70 set.setValue("DesktopShortcutsScript/Enable", GetDesktopShortcutsScript());
71 set.setValue("DesktopShortcutsScript/Disable", GetDisableDesktopShortcutsScript());
72 set.setValue("DesktopShortcutsScript/Restore", GetRestoreDesktopShortcutsScript());
73 set.setValue("InputMethod", GetEnableLocalInputMethod());
74 set.setValue("AdministratorPrivilege/Prompt", GetPromptAdministratorPrivilege());
75 set.setValue("UserName/Enable", GetEnableSystemUserToUser());
76 set.setValue("Password/Prompty/Type", static_cast<int>(GetPromptType()));
77 set.setValue("Password/Save", GetSavePassword());
78 set.setValue("Password/View", GetViewPassowrd());
79 set.setValue("Password/UseSystemCredential", GetUseSystemCredential());
80 set.setValue("Connecter/Name/ShowProtocolPrefix", GetShowProtocolPrefix());
81 set.setValue("Connecter/Name/ShowIpPort", GetShowIpPortInName());
82 set.setValue("Viewer/AdaptWindows", (int)GetAdaptWindows());
83 set.endGroup();
84 return 0;
85}
86
87bool CParameterPlugin::GetCaptureAllKeyboard() const
88{
89 return m_bCaptureAllKeyboard;
90}
91
92void CParameterPlugin::SetCaptureAllKeyboard(bool bCapture)
93{
94 if(m_bCaptureAllKeyboard == bCapture)
95 return;
96 m_bCaptureAllKeyboard = bCapture;
97 SetModified(true);
98 emit sigCaptureAllKeyboard();
99}
100
101bool CParameterPlugin::GetDesktopShortcutsScript() const
102{
103 return m_bDesktopShortcutsScript;
104}
105
106void CParameterPlugin::SetDesktopShortcutsScript(bool newDesktopShortcutsScript)
107{
108 if(m_bDesktopShortcutsScript == newDesktopShortcutsScript)
109 return;
110 m_bDesktopShortcutsScript = newDesktopShortcutsScript;
111 SetModified(true);
112}
113
114QString CParameterPlugin::GetRestoreDesktopShortcutsScript() const
115{
116 return m_szRestoreDesktopShortcutsScript;
117}
118
119void CParameterPlugin::SetRestoreDesktopShortcutsScript(const QString &newRestoreDesktopShortcutsScript)
120{
121 if(m_szRestoreDesktopShortcutsScript == newRestoreDesktopShortcutsScript)
122 return;
123 m_szRestoreDesktopShortcutsScript = newRestoreDesktopShortcutsScript;
124 SetModified(true);
125}
126
127QString CParameterPlugin::GetDisableDesktopShortcutsScript() const
128{
129 return m_szDisableDesktopShortcutsScript;
130}
131
132void CParameterPlugin::SetDisableDesktopShortcutsScript(const QString &newDisableDesktopShortcutsScript)
133{
134 if(m_szDisableDesktopShortcutsScript == newDisableDesktopShortcutsScript)
135 return;
136 m_szDisableDesktopShortcutsScript = newDisableDesktopShortcutsScript;
137 SetModified(true);
138}
139
140bool CParameterPlugin::GetEnableLocalInputMethod() const
141{
142 return m_bEnableLocalInputMethod;
143}
144
145void CParameterPlugin::SetEnableLocalInputMethod(bool enable)
146{
147 if(m_bEnableLocalInputMethod == enable)
148 return;
149 m_bEnableLocalInputMethod = enable;
150 SetModified(true);
151}
152
153bool CParameterPlugin::GetPromptAdministratorPrivilege()
154{
155 return m_bPromptAdministratorPrivilege;
156}
157
158void CParameterPlugin::SetPromptAdministratorPrivilege(bool bShow)
159{
160 if(bShow == m_bPromptAdministratorPrivilege)
161 return;
162 SetModified(true);
163 m_bPromptAdministratorPrivilege = bShow;
164 emit sigPromptAdministratorPrivilege();
165}
166
167bool CParameterPlugin::GetEnableSystemUserToUser() const
168{
169 return m_bEnableSystemUserToUser;
170}
171
172void CParameterPlugin::SetEnableSystemUserToUser(bool enable)
173{
174 if(m_bEnableSystemUserToUser == enable)
175 return;
176 m_bEnableSystemUserToUser = enable;
177 SetModified(true);
178}
179
180const QString &CParameterPlugin::GetEncryptKey() const
181{
182 return m_szEncryptKey;
183}
184
185void CParameterPlugin::SetEncryptKey(const QString &newPassword)
186{
187 if (m_szEncryptKey == newPassword)
188 return;
189 m_szEncryptKey = newPassword;
190 SetModified(true);
191 emit sigEncryptKeyChanged();
192}
193
194const bool &CParameterPlugin::GetSavePassword() const
195{
196 return m_bSavePassword;
197}
198
199void CParameterPlugin::SetSavePassword(bool NewAutoSavePassword)
200{
201 if (m_bSavePassword == NewAutoSavePassword)
202 return;
203 SetModified(true);
204 m_bSavePassword = NewAutoSavePassword;
205 emit sigSavePasswordChanged(m_bSavePassword);
206}
207
208CParameterPlugin::PromptType CParameterPlugin::GetPromptType() const
209{
210 return m_PromptType;
211}
212
213void CParameterPlugin::SetPromptType(PromptType NewPromptType)
214{
215 if (m_PromptType == NewPromptType)
216 return;
217 SetModified(true);
218 m_PromptType = NewPromptType;
219 emit sigPromptTypeChanged(m_PromptType);
220}
221
222int CParameterPlugin::GetPromptCount() const
223{
224 return m_nPromptCount;
225}
226
227void CParameterPlugin::SetPromptCount(int NewPromptCount)
228{
229 if (m_nPromptCount == NewPromptCount)
230 return;
231 m_nPromptCount = NewPromptCount;
232 SetModified(true);
233 emit sigPromptCountChanged(m_nPromptCount);
234}
235
236bool CParameterPlugin::GetViewPassowrd() const
237{
238 return m_bViewPassowrd;
239}
240
241void CParameterPlugin::SetViewPassowrd(bool NewViewPassowrd)
242{
243 if (m_bViewPassowrd == NewViewPassowrd)
244 return;
245 m_bViewPassowrd = NewViewPassowrd;
246 SetModified(true);
247 emit sigViewPassowrdChanged(m_bViewPassowrd);
248}
249
250bool CParameterPlugin::GetUseSystemCredential() const
251{
252 return m_bUseSystemCredential;
253}
254
255void CParameterPlugin::SetUseSystemCredential(bool newUseSystemCredential)
256{
257 if(m_bUseSystemCredential == newUseSystemCredential)
258 return;
259 m_bUseSystemCredential = newUseSystemCredential;
260 SetModified(true);
261}
262
263bool CParameterPlugin::GetShowProtocolPrefix() const
264{
265 return m_bShowProtocolPrefix;
266}
267
268void CParameterPlugin::SetShowProtocolPrefix(bool bShowProtocolPrefix)
269{
270 if(m_bShowProtocolPrefix == bShowProtocolPrefix)
271 return;
272 m_bShowProtocolPrefix = bShowProtocolPrefix;
273 SetModified(true);
274 emit sigShowProtocolPrefixChanged();
275}
276
277bool CParameterPlugin::GetShowIpPortInName() const
278{
279 return m_bShowIpPortInName;
280}
281
282void CParameterPlugin::SetShowIpPortInName(bool bShowIpPortInName)
283{
284 if(m_bShowIpPortInName == bShowIpPortInName)
285 return;
286 m_bShowIpPortInName = bShowIpPortInName;
287 SetModified(true);
288 emit sigSHowIpPortInNameChanged();
289}
290
291CFrmViewer::ADAPT_WINDOWS CParameterPlugin::GetAdaptWindows()
292{
293 return m_AdaptWindows;
294}
295
296void CParameterPlugin::SetAdaptWindows(CFrmViewer::ADAPT_WINDOWS aw)
297{
298 if(m_AdaptWindows == aw)
299 return;
300 m_AdaptWindows = aw;
301 SetModified(true);
302 emit sigAdaptWindowsChanged();
303}
用于显示从 CConnectDesktop 输出的图像,和向 CConnectDesktop 发送键盘、鼠标事件。
Definition FrmViewer.h:48
ADAPT_WINDOWS
窗口适配枚举常量
Definition FrmViewer.h:60
virtual int OnSave(QSettings &set) override
virtual int OnLoad(QSettings &set) override
参数接口
Definition Parameter.h:209
int SetModified(bool bModified=true)
在设置参数时,如果有修改,则调用。