X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserPC.git;a=blobdiff_plain;f=src%2Fdialogs%2FDomainSettingsDialog.cpp;fp=src%2Fdialogs%2FDomainSettingsDialog.cpp;h=151a0b4926be9930962306e38fc1beeebfcd3e52;hp=eb43fb560ec7431b94dd1e1bbbf2721af5a604d0;hb=588db73b94af7b596b0e532f4557aa8b6c41f5c3;hpb=2facce32fb6d97b52a7dc148044cae4b36a65d4c diff --git a/src/dialogs/DomainSettingsDialog.cpp b/src/dialogs/DomainSettingsDialog.cpp index eb43fb5..151a0b4 100644 --- a/src/dialogs/DomainSettingsDialog.cpp +++ b/src/dialogs/DomainSettingsDialog.cpp @@ -55,6 +55,8 @@ DomainSettingsDialog::DomainSettingsDialog(const int &startType, const QString & domainNameLineEditPointer = domainSettingsDialogUi.domainNameLineEdit; javaScriptComboBoxPointer = domainSettingsDialogUi.javaScriptComboBox; javaScriptLabelPointer = domainSettingsDialogUi.javaScriptLabel; + localStorageComboBoxPointer = domainSettingsDialogUi.localStorageComboBox; + localStorageLabelPointer = domainSettingsDialogUi.localStorageLabel; domStorageComboBoxPointer = domainSettingsDialogUi.domStorageComboBox; domStorageLabelPointer = domainSettingsDialogUi.domStorageLabel; userAgentComboBoxPointer = domainSettingsDialogUi.userAgentComboBox; @@ -85,6 +87,9 @@ DomainSettingsDialog::DomainSettingsDialog(const int &startType, const QString & // Set the visible column to be the domain name. domainsListViewPointer->setModelColumn(1); + // Get the domains selection model pointer. + domainsSelectionModelPointer = domainsListViewPointer->selectionModel(); + // Disable editing of the list view. domainsListViewPointer->setEditTriggers(QAbstractItemView::NoEditTriggers); @@ -100,7 +105,7 @@ DomainSettingsDialog::DomainSettingsDialog(const int &startType, const QString & domainsListViewPointer->setCurrentIndex(domainsTableModelPointer->index(0, domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::DOMAIN_NAME))); // Populate the domain settings. - domainSelected(domainsListViewPointer->selectionModel()->currentIndex()); + domainSelected(domainsSelectionModelPointer->currentIndex()); break; } @@ -123,7 +128,9 @@ DomainSettingsDialog::DomainSettingsDialog(const int &startType, const QString & domainsListViewPointer->setCurrentIndex(newDomainIndex[0]); // Populate the domain settings. - domainSelected(domainsListViewPointer->selectionModel()->currentIndex()); + domainSelected(domainsSelectionModelPointer->currentIndex()); + + break; } } @@ -133,6 +140,7 @@ DomainSettingsDialog::DomainSettingsDialog(const int &startType, const QString & // Process changes to the domain settings. connect(domainNameLineEditPointer, SIGNAL(textEdited(QString)), this, SLOT(domainNameChanged(QString))); connect(javaScriptComboBoxPointer, SIGNAL(currentIndexChanged(int)), this, SLOT(javaScriptChanged(int))); + connect(localStorageComboBoxPointer, SIGNAL(currentIndexChanged(int)), this, SLOT(localStorageChanged(int))); connect(domStorageComboBoxPointer, SIGNAL(currentIndexChanged(int)), this, SLOT(domStorageChanged(int))); connect(userAgentComboBoxPointer, SIGNAL(currentTextChanged(QString)), this, SLOT(userAgentChanged(QString))); connect(zoomFactorComboBoxPointer, SIGNAL(currentIndexChanged(int)), this, SLOT(zoomFactorComboBoxChanged(int))); @@ -177,13 +185,12 @@ void DomainSettingsDialog::addDomain(const QString &domainName) const domainsListViewPointer->setCurrentIndex(newDomainIndex[newDomainIndex.size() - 1]); // Populate the domain settings. - domainSelected(domainsListViewPointer->selectionModel()->currentIndex()); + domainSelected(domainsSelectionModelPointer->currentIndex()); // Update the UI. updateUi(); } - void DomainSettingsDialog::apply() const { // Get the current index. @@ -221,8 +228,19 @@ void DomainSettingsDialog::cancel() void DomainSettingsDialog::customZoomFactorChanged(const double &newValue) const { // Update the domains table model. - domainsTableModelPointer->setData(domainsListViewPointer->selectionModel()->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::CUSTOM_ZOOM_FACTOR)), - newValue); + domainsTableModelPointer->setData(domainsSelectionModelPointer->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::CUSTOM_ZOOM_FACTOR)), newValue); + + // Update the UI. + updateUi(); +} + +void DomainSettingsDialog::domStorageChanged(const int &newIndex) const +{ + // Update the domains table model. + domainsTableModelPointer->setData(domainsSelectionModelPointer->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::DOM_STORAGE)), newIndex); + + // Populate the DOM storage label. + populateDomStorageLabel(); // Update the UI. updateUi(); @@ -231,7 +249,7 @@ void DomainSettingsDialog::customZoomFactorChanged(const double &newValue) const void DomainSettingsDialog::domainNameChanged(const QString &updatedDomainName) const { // Update the domains table model. - domainsTableModelPointer->setData(domainsListViewPointer->selectionModel()->currentIndex(), updatedDomainName); + domainsTableModelPointer->setData(domainsSelectionModelPointer->currentIndex(), updatedDomainName); // Update the UI. updateUi(); @@ -245,6 +263,9 @@ void DomainSettingsDialog::domainSelected(const QModelIndex &modelIndex) const // Populate the JavaScript combo box. javaScriptComboBoxPointer->setCurrentIndex(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::JAVASCRIPT)).data().toInt()); + // Populate the local storage combo box. + localStorageComboBoxPointer->setCurrentIndex(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::LOCAL_STORAGE)).data().toInt()); + // Populate the DOM storage combo box. domStorageComboBoxPointer->setCurrentIndex(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::DOM_STORAGE)).data().toInt()); @@ -283,6 +304,7 @@ void DomainSettingsDialog::domainSelected(const QModelIndex &modelIndex) const // Populate the labels. populateJavaScriptLabel(); + populateLocalStorageLabel(); populateDomStorageLabel(); populateUserAgentLabel(userAgentComboBoxPointer->currentText()); @@ -293,8 +315,7 @@ void DomainSettingsDialog::domainSelected(const QModelIndex &modelIndex) const void DomainSettingsDialog::javaScriptChanged(const int &newIndex) const { // Update the domains table model. - domainsTableModelPointer->setData(domainsListViewPointer->selectionModel()->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::JAVASCRIPT)), - newIndex); + domainsTableModelPointer->setData(domainsSelectionModelPointer->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::JAVASCRIPT)), newIndex); // Populate the JavaScript label. populateJavaScriptLabel(); @@ -303,14 +324,13 @@ void DomainSettingsDialog::javaScriptChanged(const int &newIndex) const updateUi(); } -void DomainSettingsDialog::domStorageChanged(const int &newIndex) const +void DomainSettingsDialog::localStorageChanged(const int &newIndex) const { // Update the domains table model. - domainsTableModelPointer->setData(domainsListViewPointer->selectionModel()->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::DOM_STORAGE)), - newIndex); + domainsTableModelPointer->setData(domainsSelectionModelPointer->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::LOCAL_STORAGE)), newIndex); - // Populate the DOM storage label. - populateDomStorageLabel(); + // Poplate the local storage label. + populateLocalStorageLabel(); // Update the UI. updateUi(); @@ -328,74 +348,109 @@ void DomainSettingsDialog::ok() accept(); } +void DomainSettingsDialog::populateDomStorageLabel() const +{ + // Populate the label according to the currently selected index. + switch (domStorageComboBoxPointer->currentIndex()) + { + // Set the text according to the system default. + case (DomainsDatabaseHelper::SYSTEM_DEFAULT): + { + if (Settings::domStorageEnabled()) + domStorageLabelPointer->setText(i18nc("Domain settings DOM storage label.", "DOM storage enabled")); + else + domStorageLabelPointer->setText(i18nc("Domain settings DOM storage label.", "DOM storage disabled")); + + break; + } + + // Set the disabled text in bold. + case (DomainsDatabaseHelper::DISABLED): + { + domStorageLabelPointer->setText(i18nc("Domain settings DOM storage label. The tags should be retained.", "DOM storage disabled")); + + break; + } + + // Set the enabled text in bold. + case (DomainsDatabaseHelper::ENABLED): + { + domStorageLabelPointer->setText(i18nc("Domain settings DOM storage label. The tags should be retained.", "DOM storage enabled")); + + break; + } + } +} + void DomainSettingsDialog::populateJavaScriptLabel() const { // Populate the label according to the currently selected index. switch (javaScriptComboBoxPointer->currentIndex()) { + // Set the text according to the system default. case (DomainsDatabaseHelper::SYSTEM_DEFAULT): { - // Set the text according to the system default. if (Settings::javaScriptEnabled()) - javaScriptLabelPointer->setText(i18nc("Domains settings label", "JavaScript enabled")); + javaScriptLabelPointer->setText(i18nc("Domain settings JavaScript label.", "JavaScript enabled")); else - javaScriptLabelPointer->setText(i18nc("Domain settings label", "JavaScript disabled")); + javaScriptLabelPointer->setText(i18nc("Domain settings JavaScript label.", "JavaScript disabled")); break; } + // Set the disabled text in bold. case (DomainsDatabaseHelper::DISABLED): { - // Set the label text in bold. - javaScriptLabelPointer->setText(i18nc("Domain settings label. The tags should be retained.", "JavaScript disabled")); + javaScriptLabelPointer->setText(i18nc("Domain settings JavaScript label. The tags should be retained.", "JavaScript disabled")); break; } + // Set the enabled text in bold. case (DomainsDatabaseHelper::ENABLED): { - // Set the label text in bold. - javaScriptLabelPointer->setText(i18nc("Domains settings label. The tags should be retained.", "JavaScript enabled")); + javaScriptLabelPointer->setText(i18nc("Domain settings JavaScript label. The tags should be retained.", "JavaScript enabled")); break; } } } -void DomainSettingsDialog::populateDomStorageLabel() const +void DomainSettingsDialog::populateLocalStorageLabel() const { // Populate the label according to the currently selected index. - switch (domStorageComboBoxPointer->currentIndex()) + switch (localStorageComboBoxPointer->currentIndex()) { + // Set the text according to the system default. case (DomainsDatabaseHelper::SYSTEM_DEFAULT): { - // Set the text according to the system default. - if (Settings::domStorageEnabled()) - domStorageLabelPointer->setText(i18nc("DOM storage label", "DOM storage enabled")); + if (Settings::localStorageEnabled()) + localStorageLabelPointer->setText(i18nc("Domain settings local storage label.", "Local storage enabled")); else - domStorageLabelPointer->setText(i18nc("DOM storage label", "DOM storage disabled")); + localStorageLabelPointer->setText(i18nc("Domain settings local storage label.", "Local storage disabled")); break; } + // Set the disabled text in bold. case (DomainsDatabaseHelper::DISABLED): { - // Set the label text in bold. - domStorageLabelPointer->setText(i18nc("DOM storage label. The tags should be retained.", "DOM storage disabled")); + localStorageLabelPointer->setText(i18nc("Domain settings local storage label. The tags should be retained.", "Local storage disabled")); break; } + // Set the enabled text in bold. case (DomainsDatabaseHelper::ENABLED): { - // Set the label text in bold. - domStorageLabelPointer->setText(i18nc("DOM storage label. The tags should be retained.", "DOM storage enabled")); + localStorageLabelPointer->setText(i18nc("Domain settings local storage label. The tabs should be retained.", "Local storage enabled")); break; } } } + void DomainSettingsDialog::populateUserAgentLabel(const QString &userAgentName) const { // Populate the label according to the type. @@ -472,7 +527,7 @@ void DomainSettingsDialog::showDeleteMessageBox() const QModelIndex currentIndex = domainsListViewPointer->currentIndex(); // Delete the current row. - domainsTableModelPointer->removeRow(domainsListViewPointer->selectionModel()->currentIndex().row()); + domainsTableModelPointer->removeRow(domainsSelectionModelPointer->currentIndex().row()); // Submit all pending changes. domainsTableModelPointer->submitAll(); @@ -504,7 +559,7 @@ void DomainSettingsDialog::showDeleteMessageBox() const void DomainSettingsDialog::updateUi() const { // Update the delete button status. - deleteDomainButtonPointer->setEnabled(domainsListViewPointer->selectionModel()->hasSelection()); + deleteDomainButtonPointer->setEnabled(domainsSelectionModelPointer->hasSelection()); // Update the apply button status. applyButtonPointer->setEnabled(domainsTableModelPointer->isDirty()); @@ -519,7 +574,7 @@ void DomainSettingsDialog::updateUi() const void DomainSettingsDialog::userAgentChanged(const QString &updatedUserAgent) const { // Update the domains table model. - domainsTableModelPointer->setData(domainsListViewPointer->selectionModel()->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::USER_AGENT)), + domainsTableModelPointer->setData(domainsSelectionModelPointer->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::USER_AGENT)), UserAgentHelper::getDatabaseUserAgentNameFromTranslatedName(updatedUserAgent)); // Populate the user agent label. @@ -532,7 +587,7 @@ void DomainSettingsDialog::userAgentChanged(const QString &updatedUserAgent) con void DomainSettingsDialog::zoomFactorComboBoxChanged(const int &newIndex) const { // Get the current model index. - QModelIndex modelIndex = domainsListViewPointer->selectionModel()->currentIndex(); + QModelIndex modelIndex = domainsSelectionModelPointer->currentIndex(); // Update the domains table model. domainsTableModelPointer->setData(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::ZOOM_FACTOR)), newIndex);