4#include "RabbitCommonDir.h"
8#include "ParameterGlobal.h"
9#include "ParameterApp.h"
11CParameterApp::CParameterApp(QObject *parent) :
CParameter(parent,
"MainWindow"),
12 m_pGloablParamter(nullptr),
13 m_bReceiveShortCut(false),
14 m_bSaveMainWindowStatus(true),
15 m_ViewType(ViewType::Tab),
16 m_TabPosition(QTabWidget::North),
17 m_bEnableTabToolTip(true),
18 m_bEnableTabIcon(true),
20 m_nRecentMenuMaxCount(10),
21 m_SystemTrayIconType(SystemTrayIconMenuType::MenuBar),
22 m_bEnableSystemTrayIcon(true),
23 m_bOpenLasterClose(false),
24 m_bFavoriteEdit(false),
28 m_bMessageBoxDisplayInfomation(true),
29 m_bDockListActiveShowToolBar(true),
30 m_bDockListRecentShowToolBar(true),
31 m_bDockListFavoriteShowToolBar(true),
32 m_bKeepSplitViewWhenFullScreen(false),
37CParameterApp::~CParameterApp()
41int CParameterApp::OnLoad(QSettings &set)
43 SetReceiveShortCut(set.value(
"ReceiveShortCurt",
44 GetReceiveShortCut()).toBool());
46 set.beginGroup(
"Status");
47 SetSaveMainWindowStatus(set.value(
"Enable",
48 GetSaveMainWindowStatus()).toBool());
49 if(GetSaveMainWindowStatus()) {
50 SetStatusBar(set.value(
"StatusBar",
51 GetStatusBar()).toBool());
52 SetTabBar(set.value(
"TabBar",
53 GetTabBar()).toBool());
54 SetMenuBar(set.value(
"MenuBar",
55 GetMenuBar()).toBool());
59 set.beginGroup(
"View");
60 int viewType = set.value(
"Type", (
int)GetViewType()).toInt();
61 SetViewType((ViewType)viewType);
62 SetTabPosition(
static_cast<QTabWidget::TabPosition
>(
63 set.value(
"TabView/Tab/Position",
64 GetTabPosition()).toInt()));
65 SetEnableTabToolTip(set.value(
"TabView/Tab/Enable/ToolTip",
66 GetEnableTabToolTip()).toBool());
67 SetEnableTabIcon(set.value(
"TabView/Tab/Enable/Icon",
68 GetEnableTabIcon()).toBool());
69 SetTabElided(set.value(
"TabView/Tab/Enable/Elided", GetTabElided()).toBool());
72 SetRecentMenuMaxCount(set.value(
"Recent/Max",
73 GetRecentMenuMaxCount()).toInt());
75 set.beginGroup(
"SystemTrayIcon");
77 SetEnableSystemTrayIcon(set.value(
"Enable",
78 GetEnableSystemTrayIcon()).toBool());
79 SetSystemTrayIconMenuType(
static_cast<SystemTrayIconMenuType
>(
81 static_cast<int>(GetSystemTrayIconMenuType())).toInt()));
84 SetOpenLasterClose(set.value(
"OpenLasterClose",
85 GetOpenLasterClose()).toBool());
86 SetFavoriteEdit(set.value(
"Favorite/Double/Edit",
87 GetFavoriteEdit()).toBool());
89 SetMessageBoxDisplayInformation(
90 set.value(
"MessageBoxDisplayInformation",
91 GetMessageBoxDisplayInformation()).toBool());
93 set.beginGroup(
"Dock");
94 SetDockListActiveShowToolBar(
95 set.value(
"ListActive/ToolBar/Show",
96 GetDockListActiveShowToolBar()).toBool());
98 SetDockListRecentShowToolBar(
99 set.value(
"Recent/ToolBar/Show",
100 GetDockListRecentShowToolBar()).toBool());
102 SetDockListFovoriteShowToolBar(
103 set.value(
"Favorite/ToolBar/Show",
104 GetDockListFavoriteShowToolBar()).toBool());
106 SetKeepSplitViewWhenFullScreen(
107 set.value(
"KeepSplitViewWhenFullScreen",
108 GetKeepSplitViewWhenFullScreen()).toBool());
110 SetStartByType(set.value(
"Menu/StartByType", GetStartByType()).toBool());
120int CParameterApp::OnSave(QSettings &set)
122 set.setValue(
"ReceiveShortCurt", GetReceiveShortCut());
124 set.beginGroup(
"Status");
125 set.setValue(
"Enable", GetSaveMainWindowStatus());
126 if(GetSaveMainWindowStatus())
128 set.setValue(
"StatusBar", GetStatusBar());
129 set.setValue(
"TabBar", GetTabBar());
130 set.setValue(
"MenuBar", GetMenuBar());
135 set.beginGroup(
"View");
136 set.setValue(
"Type", (
int)GetViewType());
137 set.setValue(
"TabView/Tab/Position", GetTabPosition());
138 set.setValue(
"TabView/Tab/Enable/ToolTip", GetEnableTabToolTip());
139 set.setValue(
"TabView/Tab/Enable/Icon", GetEnableTabIcon());
140 set.setValue(
"TabView/Tab/Enable/Elided", GetTabElided());
143 set.setValue(
"Recent/Max", GetRecentMenuMaxCount());
145 set.beginGroup(
"SystemTrayIcon");
146 set.setValue(
"Enable", GetEnableSystemTrayIcon());
147 set.setValue(
"MenuType",
148 static_cast<int>(GetSystemTrayIconMenuType()));
151 set.setValue(
"OpenLasterClose", GetOpenLasterClose());
152 set.setValue(
"Favorite/Double/Edit", GetFavoriteEdit());
153 set.setValue(
"MessageBoxDisplayInformation",
154 GetMessageBoxDisplayInformation());
156 set.beginGroup(
"Dock");
157 set.setValue(
"ListActive/ToolBar/Show",
158 GetDockListActiveShowToolBar());
159 set.setValue(
"Recent/ToolBar/Show",
160 GetDockListRecentShowToolBar());
161 set.setValue(
"Favorite/ToolBar/Show",
162 GetDockListFavoriteShowToolBar());
164 set.setValue(
"KeepSplitViewWhenFullScreen",
165 GetKeepSplitViewWhenFullScreen());
167 set.setValue(
"Menu/StartByType", GetStartByType());
179 return m_pGloablParamter;
184 m_pGloablParamter = para;
187bool CParameterApp::GetReceiveShortCut()
const
189 return m_bReceiveShortCut;
192void CParameterApp::SetReceiveShortCut(
bool newReceiveShortCut)
194 if (m_bReceiveShortCut == newReceiveShortCut)
196 m_bReceiveShortCut = newReceiveShortCut;
198 emit sigReceiveShortCutChanged();
201bool CParameterApp::GetSaveMainWindowStatus()
const
203 return m_bSaveMainWindowStatus;
206void CParameterApp::SetSaveMainWindowStatus(
bool newSaveMainWindowStatus)
208 if (m_bSaveMainWindowStatus == newSaveMainWindowStatus)
210 m_bSaveMainWindowStatus = newSaveMainWindowStatus;
212 emit sigSaveMainWindowStatusChanged();
215CParameterApp::ViewType CParameterApp::GetViewType()
220int CParameterApp::SetViewType(ViewType type)
222 if(m_ViewType == type)
226 emit sigViewTypeChanged();
230const QTabWidget::TabPosition &CParameterApp::GetTabPosition()
const
232 return m_TabPosition;
235void CParameterApp::SetTabPosition(
const QTabWidget::TabPosition &newTabPosition)
237 if (m_TabPosition == newTabPosition)
239 m_TabPosition = newTabPosition;
241 emit sigTabPositionChanged();
244const bool CParameterApp::GetEnableTabToolTip()
const
246 return m_bEnableTabToolTip;
249void CParameterApp::SetEnableTabToolTip(
bool bEnable)
251 if(m_bEnableTabToolTip == bEnable)
253 m_bEnableTabToolTip = bEnable;
255 emit sigEnableTabToolTipChanged();
258const bool CParameterApp::GetEnableTabIcon()
const
260 return m_bEnableTabIcon;
263void CParameterApp::SetEnableTabIcon(
bool bEnable)
265 if(m_bEnableTabIcon == bEnable)
267 m_bEnableTabIcon = bEnable;
269 emit sigEnableTabIconChanged();
272const bool CParameterApp::GetTabElided()
const
277void CParameterApp::SetTabElided(
bool bElided)
279 if(m_bTabElided == bElided)
281 m_bTabElided = bElided;
286int CParameterApp::GetRecentMenuMaxCount()
const
288 return m_nRecentMenuMaxCount;
291void CParameterApp::SetRecentMenuMaxCount(
int newRecentMenuMaxCount)
293 if (m_nRecentMenuMaxCount == newRecentMenuMaxCount)
295 m_nRecentMenuMaxCount = newRecentMenuMaxCount;
297 emit sigRecentMenuMaxCountChanged(m_nRecentMenuMaxCount);
300CParameterApp::SystemTrayIconMenuType CParameterApp::GetSystemTrayIconMenuType()
const
302 return m_SystemTrayIconType;
305void CParameterApp::SetSystemTrayIconMenuType(SystemTrayIconMenuType newSystemTrayIconType)
307 if(m_SystemTrayIconType == newSystemTrayIconType)
309 m_SystemTrayIconType = newSystemTrayIconType;
311 emit sigSystemTrayIconTypeChanged();
314bool CParameterApp::GetEnableSystemTrayIcon()
const
316 return m_bEnableSystemTrayIcon;
319int CParameterApp::SetEnableSystemTrayIcon(
bool bShow)
321 if(m_bEnableSystemTrayIcon == bShow)
323 m_bEnableSystemTrayIcon = bShow;
325 emit sigEnableSystemTrayIcon();
329bool CParameterApp::GetOpenLasterClose()
const
331 return m_bOpenLasterClose;
334void CParameterApp::SetOpenLasterClose(
bool newOpenLasterClose)
336 if (m_bOpenLasterClose == newOpenLasterClose)
338 m_bOpenLasterClose = newOpenLasterClose;
340 emit sigOpenLasterCloseChanged(m_bOpenLasterClose);
343bool CParameterApp::GetFavoriteEdit()
const
345 return m_bFavoriteEdit;
348void CParameterApp::SetFavoriteEdit(
bool newFavoriteEdit)
350 if(m_bFavoriteEdit == newFavoriteEdit)
352 m_bFavoriteEdit = newFavoriteEdit;
354 emit sigFavoriteEditChanged(m_bFavoriteEdit);
357bool CParameterApp::GetStatusBar()
const
362void CParameterApp::SetStatusBar(
bool checked)
364 if(m_bStatusBar == checked)
366 m_bStatusBar = checked;
370bool CParameterApp::GetTabBar()
const
375void CParameterApp::SetTabBar(
bool checked)
377 if(m_bTabBar == checked)
383bool CParameterApp::GetMenuBar()
const
388void CParameterApp::SetMenuBar(
bool checked)
390 if(m_bMenuBar == checked)
392 m_bMenuBar = checked;
396const bool CParameterApp::GetMessageBoxDisplayInformation()
const
398 return m_bMessageBoxDisplayInfomation;
401void CParameterApp::SetMessageBoxDisplayInformation(
bool bEnable)
403 if(m_bMessageBoxDisplayInfomation == bEnable)
405 m_bMessageBoxDisplayInfomation = bEnable;
409const bool CParameterApp::GetDockListActiveShowToolBar()
const
411 return m_bDockListActiveShowToolBar;
414void CParameterApp::SetDockListActiveShowToolBar(
bool bEnable)
416 if(m_bDockListActiveShowToolBar == bEnable)
418 m_bDockListActiveShowToolBar = bEnable;
422const bool CParameterApp::GetDockListRecentShowToolBar()
const
424 return m_bDockListRecentShowToolBar;
427void CParameterApp::SetDockListRecentShowToolBar(
bool bEnable)
429 if(m_bDockListRecentShowToolBar == bEnable)
431 m_bDockListRecentShowToolBar = bEnable;
435const bool CParameterApp::GetDockListFavoriteShowToolBar()
const
437 return m_bDockListFavoriteShowToolBar;
440void CParameterApp::SetDockListFovoriteShowToolBar(
bool bEnable)
442 if(m_bDockListFavoriteShowToolBar == bEnable)
444 m_bDockListFavoriteShowToolBar = bEnable;
448bool CParameterApp::GetKeepSplitViewWhenFullScreen()
const
450 return m_bKeepSplitViewWhenFullScreen;
453void CParameterApp::SetKeepSplitViewWhenFullScreen(
bool newKeepSplitViewWhenFullScreen)
455 if(m_bKeepSplitViewWhenFullScreen == newKeepSplitViewWhenFullScreen)
457 m_bKeepSplitViewWhenFullScreen = newKeepSplitViewWhenFullScreen;
461bool CParameterApp::GetStartByType()
const
463 return m_bStartByType;
466void CParameterApp::SetStartByType(
bool newStartByType)
468 if (m_bStartByType == newStartByType)
470 m_bStartByType = newStartByType;
471 emit sigStartByTypeChanged();
static CICE * Instance()
Single instance
int SetModified(bool bModified=true)
在设置参数时,如果有修改,则调用。