玉兔远程控制 0.1.0-bate6
载入中...
搜索中...
未找到
ParameterBase.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include "ParameterBase.h"
4#include "ParameterPlugin.h"
5#include <QLoggingCategory>
6
7static Q_LOGGING_CATEGORY(log, "Client.Parameter.Base")
8
9CParameterBase::CParameterBase(QObject* parent)
10 : CParameterOperate(parent)
11 , m_Net(this)
12 , m_Proxy(this)
13 , m_Record(this)
14 , m_bEnableLocalInputMethod(false)
15{
16 Init();
17}
18
19CParameterBase::CParameterBase(CParameterOperate* parent,
20 const QString& szPrefix)
21 : CParameterOperate(parent, szPrefix)
22 , m_Net(this)
23 , m_Proxy(this)
24 , m_Record(this)
25{
26 Init();
27}
28
29int CParameterBase::Init()
30{
31 m_bShowServerName = true;
32 m_bOnlyView = false;
33 m_bLocalCursor = true;
34 m_bCursorPosition = true;
35 m_bClipboard = true;
36 m_bSupportsDesktopResize = true;
37 m_bLedState = true;
39 m_dbZoomFactor = 1;
40 return 0;
41}
42
43int CParameterBase::OnLoad(QSettings &set)
44{
45 SetServerName(set.value("ServerName", GetServerName()).toString());
46 SetShowServerName(set.value("ShowServerName", GetShowServerName()).toBool());
47 SetOnlyView(set.value("OnlyView", GetOnlyView()).toBool());
48 SetLocalCursor(set.value("LocalCursor", GetLocalCursor()).toBool());
49 SetCursorPosition(set.value("CursorPosition", GetCursorPosition()).toBool());
50 SetClipboard(set.value("Clipboard", GetClipboard()).toBool());
51 SetSupportsDesktopResize(set.value("SupportsDesktopResize",
52 GetSupportsDesktopResize()).toBool());
53 SetLedState(set.value("LedState", GetLedState()).toBool());
54 SetZoomFactor(set.value("Viewer/ZoomFactor", GetZoomFactor()).toDouble());
55 SetAdaptWindows(
57 set.value("Viewer/AdaptType",
58 (int)GetGlobalParameters()->GetAdaptWindows()).toInt());
59 SetEnableLocalInputMethod(set.value("LocalInputMethod", GetEnableLocalInputMethod()).toBool());
60 return CParameterOperate::OnLoad(set);
61}
62
63int CParameterBase::OnSave(QSettings &set)
64{
65 set.setValue("ServerName", GetServerName());
66 set.setValue("ShowServerName", GetShowServerName());
67 set.setValue("OnlyView", GetOnlyView());
68 set.setValue("LocalCursor", GetLocalCursor());
69 set.setValue("CursorPosition", GetCursorPosition());
70 set.setValue("Clipboard", GetClipboard());
71 set.setValue("SupportsDesktopResize", GetSupportsDesktopResize());
72 set.setValue("LedState", GetLedState());
73 set.setValue("Viewer/ZoomFactor", GetZoomFactor());
74 set.setValue("Viewer/AdaptType", (int)GetAdaptWindows());
75 set.setValue("LocalInputMethod", GetEnableLocalInputMethod());
76 return CParameterOperate::OnSave(set);
77}
78
79const QString CParameterBase::GetServerName() const
80{
81 return m_szServerName;
82}
83
84void CParameterBase::SetServerName(const QString& szName)
85{
86 if(m_szServerName == szName)
87 return;
88 m_szServerName = szName;
89 SetModified(true);
90}
91
92bool CParameterBase::GetShowServerName() const
93{
94 return m_bShowServerName;
95}
96
97void CParameterBase::SetShowServerName(bool NewShowServerName)
98{
99 if (m_bShowServerName == NewShowServerName)
100 return;
101 m_bShowServerName = NewShowServerName;
102 SetModified(true);
103 emit sigShowServerNameChanged();
104}
105
106bool CParameterBase::GetOnlyView() const
107{
108 return m_bOnlyView;
109}
110
111void CParameterBase::SetOnlyView(bool only)
112{
113 if(m_bOnlyView == only)
114 return;
115 m_bOnlyView = only;
116 SetModified(true);
117}
118
119const bool CParameterBase::GetLocalCursor() const
120{
121 return m_bLocalCursor;
122}
123
124void CParameterBase::SetLocalCursor(bool cursor)
125{
126 if(m_bLocalCursor == cursor)
127 return;
128 m_bLocalCursor = cursor;
129 SetModified(true);
130}
131
132const bool CParameterBase::GetCursorPosition() const
133{
134 return m_bCursorPosition;
135}
136
137void CParameterBase::SetCursorPosition(bool pos)
138{
139 if(m_bCursorPosition == pos)
140 return;
141 m_bCursorPosition = pos;
142 SetModified(true);
143}
144
145const bool CParameterBase::GetClipboard() const
146{
147 return m_bClipboard;
148}
149
150void CParameterBase::SetClipboard(bool c)
151{
152 if(m_bClipboard == c)
153 return;
154 m_bClipboard = c;
155 SetModified(true);
156}
157
158bool CParameterBase::GetSupportsDesktopResize() const
159{
160 return m_bSupportsDesktopResize;
161}
162
163void CParameterBase::SetSupportsDesktopResize(bool newSupportsDesktopResize)
164{
165 if(m_bSupportsDesktopResize == newSupportsDesktopResize)
166 return;
167 m_bSupportsDesktopResize = newSupportsDesktopResize;
168 SetModified(true);
169}
170
171bool CParameterBase::GetLedState() const
172{
173 return m_bLedState;
174}
175
176void CParameterBase::SetLedState(bool state)
177{
178 if(m_bLedState == state)
179 return;
180 m_bLedState = state;
181 SetModified(true);
182}
183
184CFrmViewer::ADAPT_WINDOWS CParameterBase::GetAdaptWindows()
185{
186 return m_AdaptWindows;
187}
188
189void CParameterBase::SetAdaptWindows(CFrmViewer::ADAPT_WINDOWS aw)
190{
191 if(m_AdaptWindows == aw)
192 return;
193 m_AdaptWindows = aw;
194 SetModified(true);
195 emit sigAdaptWindowsChanged(m_AdaptWindows);
196}
197
198double CParameterBase::GetZoomFactor() const
199{
200 return m_dbZoomFactor;
201}
202
203void CParameterBase::SetZoomFactor(double newZoomFactor)
204{
205 if(m_dbZoomFactor == newZoomFactor)
206 return;
207 m_dbZoomFactor = newZoomFactor;
208 SetModified(true);
209 emit sigZoomFactorChanged(m_dbZoomFactor);
210 return;
211}
212
214{
216 if(!pPlugin) {
217 QString szErr = "The CParameterClient is null";
218 qCritical(log) << szErr;
219 Q_ASSERT_X(false, "CParameterBase", szErr.toStdString().c_str());
220 return;
221 }
222
223 SetAdaptWindows(pPlugin->GetAdaptWindows());
224
225 SetEnableLocalInputMethod(pPlugin->GetEnableLocalInputMethod());
226
227 m_Record = pPlugin->m_Record;
228
229 return;
230}
231
232bool CParameterBase::GetEnableLocalInputMethod() const
233{
234 return m_bEnableLocalInputMethod;
235}
236
237void CParameterBase::SetEnableLocalInputMethod(bool enable)
238{
239 if(m_bEnableLocalInputMethod == enable)
240 return;
241 m_bEnableLocalInputMethod = enable;
242 SetModified(true);
243 emit sigEnableInputMethod(m_bEnableLocalInputMethod);
244}
ADAPT_WINDOWS
窗口适配枚举常量
Definition FrmViewer.h:60
@ ZoomToWindow
桌面缩放到窗口大小,窗口是固定的
连接基础参数接口。包括基本参数(网络参数等)。 所有插件的连接参数都应从此类派生。
virtual void slotSetGlobalParameters() override
设置 CParameterPlugin 后调用,用于初始化与 CParameterPlugin 有关的操作。
操作参数接口。仅在插件内有效。
CParameterPlugin * GetGlobalParameters()
Get CParameterPlugin
插件的全局参数。
int SetModified(bool bModified=true)
在设置参数时,如果有修改,则调用。