]> gitweb.stoutner.com Git - PrivacyBrowserPC.git/blobdiff - src/dialogs/DomainSettingsDialog.h
Add local storage domain settings.
[PrivacyBrowserPC.git] / src / dialogs / DomainSettingsDialog.h
index 3ae50b567ac14d710e40324fea0252666bc4f2c5..fb4590211a99fd6bdddf7ce1f068fa3a26f304a4 100644 (file)
@@ -25,6 +25,8 @@
 
 // Qt toolkit headers.
 #include <QDialog>
+#include <QDoubleSpinBox>
+#include <QLabel>
 #include <QtSql>
 
 class DomainSettingsDialog : public QDialog
@@ -34,32 +36,60 @@ class DomainSettingsDialog : public QDialog
 
 public:
     // The primary constructor.
-    explicit DomainSettingsDialog(QWidget *parent = nullptr);
+    explicit DomainSettingsDialog(const int &startType = SHOW_ALL_DOMAINS, const QString &domainName = QStringLiteral(""));
+
+    // The public static int constants.
+    static const int SHOW_ALL_DOMAINS;
+    static const int ADD_DOMAIN;
+    static const int EDIT_DOMAIN;
+
+signals:
+    void domainSettingsUpdated() const;
 
 private Q_SLOTS:
     // The private slots.
     void apply() const;
     void cancel();
-    void domainNameChanged(QString updatedDomainName) const;
-    void domainSelected(QModelIndex modelIndex) const;
-    void javaScriptChanged(int newIndex) const;
+    void customZoomFactorChanged(const double &newValue) const;
+    void domStorageChanged(const int &newIndex) const;
+    void domainNameChanged(const QString &updatedDomainName) const;
+    void domainSelected(const QModelIndex &modelIndex) const;
+    void javaScriptChanged(const int &newIndex) const;
+    void localStorageChanged(const int &newIndex) const;
     void ok();
     void reset() const;
     void showAddMessageBox();
     void showDeleteMessageBox() const;
+    void userAgentChanged(const QString &updatedUserAgent) const;
+    void zoomFactorComboBoxChanged(const int &newIndex) const;
 
 private:
-    // The private functions.
-    void updateUi() const;
-
     // The private variables.
     QPushButton *applyButtonPointer;
+    QDoubleSpinBox *customZoomFactorSpinBoxPointer;
     QPushButton *deleteDomainButtonPointer;
-    QListView *domainsListViewPointer;
+    QComboBox *domStorageComboBoxPointer;
+    QLabel *domStorageLabelPointer;
     KLineEdit *domainNameLineEditPointer;
     QWidget *domainSettingsWidgetPointer;
+    QListView *domainsListViewPointer;
     QSqlTableModel *domainsTableModelPointer;
+    QItemSelectionModel *domainsSelectionModelPointer;
     QComboBox *javaScriptComboBoxPointer;
+    QLabel *javaScriptLabelPointer;
+    QComboBox *localStorageComboBoxPointer;
+    QLabel *localStorageLabelPointer;
     QPushButton *resetButtonPointer;
+    QComboBox *userAgentComboBoxPointer;
+    QLabel *userAgentLabelPointer;
+    QComboBox *zoomFactorComboBoxPointer;
+
+    // The private functions.
+    void addDomain(const QString &domainName) const;
+    void populateDomStorageLabel() const;
+    void populateJavaScriptLabel() const;
+    void populateLocalStorageLabel() const;
+    void populateUserAgentLabel(const QString &userAgentName) const;
+    void updateUi() const;
 };
 #endif