#ifndef DOMAINSETTINGSDIALOG_H
#define DOMAINSETTINGSDIALOG_H
+// Application headers.
+#include "helpers/UserAgentHelper.h"
+
// KDE Frameworks headers.
#include <KLineEdit>
// Qt toolkit headers.
#include <QDialog>
+#include <QDoubleSpinBox>
+#include <QLabel>
#include <QtSql>
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;
+ QPalette defaultPalette;
QPushButton *deleteDomainButtonPointer;
- QListView *domainsListViewPointer;
+ QWidget *domStorageWidgetPointer;
+ QComboBox *domStorageComboBoxPointer;
+ QLabel *domStorageLabelPointer;
KLineEdit *domainNameLineEditPointer;
QWidget *domainSettingsWidgetPointer;
+ QListView *domainsListViewPointer;
QSqlTableModel *domainsTableModelPointer;
+ QItemSelectionModel *domainsSelectionModelPointer;
+ QPalette highlightedPalette;
+ QWidget *javaScriptWidgetPointer;
QComboBox *javaScriptComboBoxPointer;
+ QLabel *javaScriptLabelPointer;
+ QWidget *localStorageWidgetPointer;
+ QComboBox *localStorageComboBoxPointer;
+ QLabel *localStorageLabelPointer;
QPushButton *resetButtonPointer;
+ QWidget *userAgentWidgetPointer;
+ QComboBox *userAgentComboBoxPointer;
+ UserAgentHelper *userAgentHelperPointer;
+ QLabel *userAgentLabelPointer;
+ QWidget *zoomFactorWidgetPointer;
+ 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