4#include <QLoggingCategory>
6#if QT_VERSION > QT_VERSION_CHECK(6, 10, 0)
7 #include "FrmExtensionManager.h"
8 #include "FrmExtensionStore.h"
10#include "FrmWebBrowser.h"
11#include "DlgSettings.h"
12#include "ui_DlgSettings.h"
14static Q_LOGGING_CATEGORY(log,
"WebBrowser.Parameter")
21 , m_pSearchModel(
nullptr)
24 ui->leName->setText(m_pPara->GetName());
25 ui->leHomeUrl->setText(m_pPara->GetHomeUrl());
26 if(m_pPara->GetTabUrl().isEmpty() && !m_pPara->GetHomeUrl().isEmpty())
27 ui->leTabUrl->setText(m_pPara->GetHomeUrl());
29 ui->leTabUrl->setText(m_pPara->GetTabUrl());
30 ui->leDownloadFolder->setText(m_pPara->GetDownloadFolder());
31 ui->cbDownloadShowWindow->setChecked(m_pPara->GetShowDownloadManager());
32 ui->cbDownloadSave->setChecked(m_pPara->GetShowDownloadLocation());
33 ui->cbOpenPreious->setChecked(m_pPara->GetOpenPrevious());
34 ui->cbClearCookie->setChecked(m_pPara->GetClearCookie());
35 ui->cbClearHttpCache->setChecked(m_pPara->GetClearHttpCache());
36 ui->cbAutoFillUserPassword->setChecked(m_pPara->GetAutoFillUserAndPassword());
37 ui->cbPrintFinishedPrompt->setChecked(m_pPara->GetPromptPrintFinished());
39 m_pSearchModel =
new QStandardItemModel(
this);
40 auto searchList = m_pPara->GetSearchEngineList();
41 foreach(
auto i, searchList)
43 QStandardItem* item =
new QStandardItem(i);
44 m_pSearchModel->appendRow(item);
46 ui->lstSearchEngine->setModel(m_pSearchModel);
47 int index = searchList.indexOf(m_pPara->GetSearchEngine());
48 QModelIndex indexModel;
49 indexModel = m_pSearchModel->index(index, 0);
50 ui->lstSearchEngine->setCurrentIndex(indexModel);
53 m_pRecordUI->SetParameter(&m_pPara->m_Record);
54 ui->tabWidget->addTab(m_pRecordUI, m_pRecordUI->windowIcon(), m_pRecordUI->windowTitle());
56 m_pMediaDevices =
new CFrmMediaDevices(
true,
this);
57 m_pMediaDevices->SetParameter(&m_pPara->m_MediaDevices.m_Para);
58 ui->tabWidget->addTab(m_pMediaDevices, m_pMediaDevices->windowIcon(), m_pMediaDevices->windowTitle());
60#if QT_VERSION > QT_VERSION_CHECK(6, 10, 0)
62 ui->tabWidget->addTab(pExtension, pExtension->windowIcon(), pExtension->windowTitle());
64 ui->tabWidget->addTab(pStore, pStore->windowIcon(), pStore->windowTitle());
68CDlgSettings::~CDlgSettings()
73void CDlgSettings::accept()
75 m_pPara->SetName(ui->leName->text());
76 m_pPara->SetHomeUrl(ui->leHomeUrl->text());
77 m_pPara->SetTabUrl(ui->leTabUrl->text());
78 m_pPara->SetDownloadFolder(ui->leDownloadFolder->text());
79 m_pPara->SetShowDownloadManager(ui->cbDownloadShowWindow->isChecked());
80 m_pPara->SetShowDownloadLocation(ui->cbDownloadSave->isChecked());
81 m_pPara->SetOpenPrevious(ui->cbOpenPreious->isChecked());
82 m_pPara->SetClearHttpCache(ui->cbClearHttpCache->isChecked());
83 m_pPara->SetClearCookie(ui->cbClearCookie->isChecked());
84 m_pPara->SetAutoFillUserAndPassword(ui->cbAutoFillUserPassword->isChecked());
85 m_pPara->SetPromptPrintFinished(ui->cbPrintFinishedPrompt->isChecked());
86 auto index = ui->lstSearchEngine->currentIndex();
88 auto search = m_pSearchModel->item(index.row())->text();
89 m_pPara->SetSearchEngine(search);
93 ui->tabWidget->setCurrentWidget(m_pRecordUI);
97 int nRet = m_pRecordUI->Accept();
104void CDlgSettings::on_leHomeUrl_editingFinished()
106 if(ui->leTabUrl->text().isEmpty())
107 ui->leTabUrl->setText(ui->leHomeUrl->text());
110void CDlgSettings::on_pbDownloadFolder_clicked()
112 QString szDir = ui->leDownloadFolder->text();
114 szDir = m_pPara->GetDownloadFolder();
115 szDir = QFileDialog::getExistingDirectory(
this, tr(
"Download folder"), szDir);
117 ui->leDownloadFolder->setText(szDir);
virtual Q_INVOKABLE bool CheckValidity(bool validity=false)
检查参数的有效性