// Populate the zoom factor combo box.
zoomFactorComboBoxPointer->setCurrentIndex(zoomFactorComboBoxIndex);
- // Populate the custom zoom factor spin box.
- customZoomFactorSpinBoxPointer->setValue(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::CUSTOM_ZOOM_FACTOR)).data().toDouble());
+ // Populate the custom zoom factor spin box according to the zoom factor combo box.
+ if (zoomFactorComboBoxIndex == 0) // System default zoom factor is selected.
+ {
+ // Display the default zoom factor.
+ customZoomFactorSpinBoxPointer->setValue(Settings::zoomFactor());
+ }
+ else // Custom zoom factor is selected.
+ {
+ // Display the custom zoom factor from the domain settings.
+ customZoomFactorSpinBoxPointer->setValue(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::CUSTOM_ZOOM_FACTOR)).data().toDouble());
+ }
- // Set the initial visibility of the custom zoom factor spin box.
- customZoomFactorSpinBoxPointer->setVisible(zoomFactorComboBoxIndex);
+ // Set the initial status of the custom zoom factor spin box.
+ customZoomFactorSpinBoxPointer->setEnabled(zoomFactorComboBoxIndex);
// Populate the labels.
populateJavaScriptLabel();
void DomainSettingsDialog::zoomFactorComboBoxChanged(const int &newIndex) const
{
+ // Get the current model index.
+ QModelIndex modelIndex = domainsListViewPointer->selectionModel()->currentIndex();
+
// Update the domains table model.
- domainsTableModelPointer->setData(domainsListViewPointer->selectionModel()->currentIndex().siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::ZOOM_FACTOR)),
- newIndex);
+ domainsTableModelPointer->setData(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::ZOOM_FACTOR)), newIndex);
+
+ // Populate the custom zoom factor spin box according to the zoom factor combo box.
+ if (newIndex == 0) // System default zoom factor is selected.
+ {
+ // Display the default zoom factor.
+ customZoomFactorSpinBoxPointer->setValue(Settings::zoomFactor());
+ }
+ else // Custom zoom factor is selected.
+ {
+ // Display the custom zoom factor from the domain settings.
+ customZoomFactorSpinBoxPointer->setValue(modelIndex.siblingAtColumn(domainsTableModelPointer->fieldIndex(DomainsDatabaseHelper::CUSTOM_ZOOM_FACTOR)).data().toDouble());
+ }
- // Update the visibility of the custom zoom factor spin box.
- customZoomFactorSpinBoxPointer->setVisible(newIndex);
+ // Update the status of the custom zoom factor spin box.
+ customZoomFactorSpinBoxPointer->setEnabled(newIndex);
// Update the UI.
updateUi();
// Run schema update code.
switch (currentSchemaVersion)
{
- // Upgrade from schema version 0.
+ // Upgrade from schema version 0 to schema version 1.
case 0:
{
// Add the JavaScript column.
[[fallthrough]];
}
- // Upgrade from schema version 1.
+ // Upgrade from schema version 1 to schema version 2.
case 1:
{
// Add the User Agent column.
[[fallthrough]];
}
- // Upgrade from schema version 2.
+ // Upgrade from schema version 2 to schema version 3.
case 2:
{
// Add the Zoom Factor columns.
[[fallthrough]];
}
- // Upgrade from schema version 3.
+ // Upgrade from schema version 3 to schema version 4.
case 3:
// Add the Local Storage column.
domainsDatabase.exec("ALTER TABLE " + DOMAINS_TABLE + " ADD COLUMN " + LOCAL_STORAGE + " INTEGER DEFAULT 0");