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