3#include "ParameterDlgSettings.h"
4#include "ui_ParameterDlgSettings.h"
6#include "RabbitCommonDir.h"
13#include <QLoggingCategory>
15static Q_LOGGING_CATEGORY(log,
"App.MainWindow.Parameter")
18 QList<QWidget *> wViewer,
27 foreach(
auto p, wViewer)
29 ui->tabWidget->addTab(p, p->windowIcon(), p->windowTitle());
31 check = connect(
this, SIGNAL(accepted()), p, SLOT(slotAccept()));
34 qCritical(log) <<
"Class" << p->metaObject()->className()
35 <<
"must has slot slotAccept(), please add it";
45 ui->tabWidget->addTab(pWidget, pWidget->windowTitle());
47 check = connect(
this, SIGNAL(accepted()),
48 pWidget, SLOT(slotAccept()));
51 qCritical(log) <<
"Class" << pWidget->metaObject()->className()
52 <<
"must has slot slotAccept(), please add it";
58 ui->cbReciverShortCut->setChecked(m_pParameters->GetReceiveShortCut());
59 ui->cbSaveMainWindowStatus->setChecked(m_pParameters->GetSaveMainWindowStatus());
60 ui->cbResumLasterClose->setChecked(m_pParameters->GetOpenLasterClose());
61 ui->cbStartByType->setChecked(m_pParameters->GetStartByType());
63 switch (m_pParameters->GetTabPosition()) {
64 case QTabWidget::North:
65 ui->rbNorth->setChecked(
true);
67 case QTabWidget::South:
68 ui->rbSouth->setChecked(
true);
70 case QTabWidget::West:
71 ui->rbWest->setChecked(
true);
73 case QTabWidget::East:
74 ui->rbEast->setChecked(
true);
77 ui->cbTabToolTip->setChecked(m_pParameters->GetEnableTabToolTip());
78 ui->cbTabIcon->setChecked(m_pParameters->GetEnableTabIcon());
79 ui->cbElided->setChecked(m_pParameters->GetTabElided());
81 ui->sbRecentMenuMaxCount->setValue(m_pParameters->GetRecentMenuMaxCount());
83 switch (m_pParameters->GetSystemTrayIconMenuType()) {
84 case CParameterApp::SystemTrayIconMenuType::No:
85 ui->rbSystemTrayIconNo->setChecked(
true);
87 case CParameterApp::SystemTrayIconMenuType::MenuBar:
88 ui->rbMenuBar->setChecked(
true);
90 case CParameterApp::SystemTrayIconMenuType::RecentOpen:
91 ui->rbSystemTrayIconRecentOpen->setChecked(
true);
93 case CParameterApp::SystemTrayIconMenuType::Operate:
94 ui->rbSystemTrayIconOperate->setChecked(
true);
99 ui->cbShowSystemTrayIcon->setChecked(m_pParameters->GetEnableSystemTrayIcon());
101 ui->cbFavoriteDoubleEdit->setChecked(m_pParameters->GetFavoriteEdit());
102 ui->cbMessageBoxDisplayInfo->setChecked(m_pParameters->GetMessageBoxDisplayInformation());
103 ui->cbKeepSplitView->setChecked(m_pParameters->GetKeepSplitViewWhenFullScreen());
106CParameterDlgSettings::~CParameterDlgSettings()
111void CParameterDlgSettings::on_pbOk_clicked()
113 if(!m_pParameters)
return;
115 m_pParameters->SetReceiveShortCut(ui->cbReciverShortCut->isChecked());
116 m_pParameters->SetSaveMainWindowStatus(ui->cbSaveMainWindowStatus->isChecked());
117 m_pParameters->SetOpenLasterClose(ui->cbResumLasterClose->isChecked());
118 m_pParameters->SetStartByType(ui->cbStartByType->isChecked());
120 if(ui->rbNorth->isChecked()) m_pParameters->SetTabPosition(QTabWidget::North);
121 if(ui->rbSouth->isChecked()) m_pParameters->SetTabPosition(QTabWidget::South);
122 if(ui->rbEast->isChecked()) m_pParameters->SetTabPosition(QTabWidget::East);
123 if(ui->rbWest->isChecked()) m_pParameters->SetTabPosition(QTabWidget::West);
124 m_pParameters->SetEnableTabToolTip(ui->cbTabToolTip->isChecked());
125 m_pParameters->SetEnableTabIcon(ui->cbTabIcon->isChecked());
126 m_pParameters->SetTabElided(ui->cbElided->isChecked());
128 m_pParameters->SetRecentMenuMaxCount(ui->sbRecentMenuMaxCount->value());
131 m_pParameters->SetEnableSystemTrayIcon(ui->cbShowSystemTrayIcon->isChecked());
132 if(ui->rbSystemTrayIconNo->isChecked())
133 m_pParameters->SetSystemTrayIconMenuType(CParameterApp::SystemTrayIconMenuType::No);
134 if(ui->rbMenuBar->isChecked())
135 m_pParameters->SetSystemTrayIconMenuType(CParameterApp::SystemTrayIconMenuType::MenuBar);
136 if(ui->rbSystemTrayIconRecentOpen->isChecked())
137 m_pParameters->SetSystemTrayIconMenuType(CParameterApp::SystemTrayIconMenuType::RecentOpen);
138 if(ui->rbSystemTrayIconOperate->isChecked())
139 m_pParameters->SetSystemTrayIconMenuType(CParameterApp::SystemTrayIconMenuType::Operate);
141 m_pParameters->SetFavoriteEdit(ui->cbFavoriteDoubleEdit->isChecked());
142 m_pParameters->SetMessageBoxDisplayInformation(ui->cbMessageBoxDisplayInfo->isChecked());
144 m_pParameters->SetKeepSplitViewWhenFullScreen(ui->cbKeepSplitView->isChecked());
148void CParameterDlgSettings::on_pbNo_clicked()
153void CParameterDlgSettings::on_cbShowSystemTrayIcon_toggled(
bool checked)
155 ui->gbSystemTrayIconContextMenu->setEnabled(checked);
static CICE * Instance()
Single instance.