6#include "ui_sitesettingsbrowsedialog.h"
16 , m_sqlColumn(sqlColumn)
19 m_ui->nameLabel->setText(name);
23 m_ui->treeWidget->header()->resizeSections(QHeaderView::ResizeToContents);
25 connect(m_ui->askButton, &QPushButton::clicked,
this, [=]() { setPermission(SiteSettingsManager::Ask); });
26 connect(m_ui->allowButton, &QPushButton::clicked,
this, [=]() { setPermission(SiteSettingsManager::Allow); });
27 connect(m_ui->denyButton, &QPushButton::clicked,
this, [=]() { setPermission(SiteSettingsManager::Deny); });
28 connect(m_ui->defaultButton, &QPushButton::clicked,
this, [=]() { setPermission(SiteSettingsManager::Default); });
33void SiteSettingsBrowseDialog::loadItems()
36 QString sqlTable =
mApp->siteSettingsManager()->sqlTable();
39 query.prepare(
QSL(
"SELECT server, %2 FROM %1 WHERE %2!=?").arg(sqlTable, m_sqlColumn));
43 while (query.next()) {
44 QString server = query.value(0).toString();
45 auto permission =
mApp->siteSettingsManager()->intToPermission(query.value(1).toInt());
46 QString permissionName =
mApp->siteSettingsManager()->getPermissionName(permission);
48 auto* item =
new QTreeWidgetItem(m_ui->treeWidget);
49 item->setText(0, server);
50 item->setText(1, permissionName);
53 m_ui->treeWidget->addTopLevelItem(item);
60 for (QHash<QString, int>::iterator it = m_listModifications.begin(); it != m_listModifications.end(); ++it) {
61 url.setHost(it.key());
62 mApp->siteSettingsManager()->setOption(m_sqlColumn, url, it.value());
68 QTreeWidgetItem* item = m_ui->treeWidget->currentItem();
73 const QString server = item->text(0);
75 if (permission == itemPermission) {
76 m_listModifications.remove(server);
79 QString permissionName =
mApp->siteSettingsManager()->getPermissionName(permission);
81 m_listModifications[server] = permission;
82 item->setText(1, permissionName);
87 m_ui->askButton->hide();
~SiteSettingsBrowseDialog()
void setPermission(const SiteSettingsManager::Permission permission)
SiteSettingsBrowseDialog(QString &name, QString &sqlColumn, QWidget *parent=nullptr)
static SqlDatabase * instance()