]> gitweb.stoutner.com Git - PrivacyBrowserPC.git/blobdiff - src/dialogs/CookiesDialog.h
Add a durable cookies dialog.
[PrivacyBrowserPC.git] / src / dialogs / CookiesDialog.h
index 17498ca0f5b38fc1bce087b561547d1c2177882c..36a7d722fc722cc6a25bbd50eaf981d4d2e67eb6 100644 (file)
 
 // Qt toolkit headers.
 #include <QDialog>
+#include <QItemSelectionModel>
 #include <QNetworkCookie>
-#include <QVBoxLayout>
+#include <QStandardItemModel>
+#include <QTreeView>
+
+// C++ headers.
+#include <list>
 
 class CookiesDialog : public QDialog
 {
@@ -31,23 +36,41 @@ class CookiesDialog : public QDialog
     Q_OBJECT
 
 public:
-    // The default constructor.
-    explicit CookiesDialog(QList<QNetworkCookie> *cookieListPointer);
+    // The primary constructor.
+    explicit CookiesDialog(std::list<QNetworkCookie> *cookieListPointer);
 
 signals:
+    // The signals.
+    void addCookie(const QNetworkCookie &cookie) const;
     void deleteAllCookies() const;
+    void deleteCookie(const QNetworkCookie &cookie) const;
 
 private Q_SLOTS:
     // The private slots.
+    void addCookieFromDialog(const QNetworkCookie &cookie, const bool &isDurable) const;
+    void deleteCookieFromDatabase(const QNetworkCookie &cookie) const;
+    void deleteCookieFromDialog(const QNetworkCookie &cookie) const;
+    void showAddCookieDialog() const;
     void showDeleteAllMessageBox() const;
+    void showDeleteCookieMessageBox() const;
+    void showDurableCookiesDialog() const;
+    void showEditCookieDialog() const;
+    void updateUi() const;
 
 private:
     // The private variables.
-    QList<QNetworkCookie> *cookieListPointer;
-    QVBoxLayout *cookiesVBoxLayoutPointer;
+    QPushButton *addCookieButtonPointer;
+    std::list<QNetworkCookie> *cookieListPointer;
     QPushButton *deleteAllButtonPointer;
+    QPushButton *deleteCookieButtonPointer;
+    QPushButton *durableCookiesButtonPointer;
+    QPushButton *editCookieButtonPointer;
+    QStandardItemModel *treeModelPointer;
+    QItemSelectionModel *treeSelectionModelPointer;
+    QTreeView *treeViewPointer;
 
     // The private functions.
-    void updateUi() const;
+    void deleteCookie(const QModelIndex &modelIndex, const bool &deleteDurableCookies) const;
+    void deleteDomain(const QModelIndex &modelIndex, const bool &deleteDurableCookies) const;
 };
 #endif