X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserPC.git;a=blobdiff_plain;f=src%2Fdialogs%2FCookiesDialog.h;h=36a7d722fc722cc6a25bbd50eaf981d4d2e67eb6;hp=17498ca0f5b38fc1bce087b561547d1c2177882c;hb=HEAD;hpb=8933c941521c591a962034ecf3486c9143bf1f80 diff --git a/src/dialogs/CookiesDialog.h b/src/dialogs/CookiesDialog.h index 17498ca..4127ef1 100644 --- a/src/dialogs/CookiesDialog.h +++ b/src/dialogs/CookiesDialog.h @@ -1,20 +1,20 @@ -/* - * Copyright © 2022 Soren Stoutner . +/* SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-FileCopyrightText: 2022-2024 Soren Stoutner * - * This file is part of Privacy Browser PC . + * This file is part of Privacy Browser PC . * - * Privacy Browser PC is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * This program is free software: you can redistribute it and/or modify it under + * the terms of the GNU General Public License as published by the Free Software + * Foundation, either version 3 of the License, or (at your option) any later + * version. * - * Privacy Browser PC is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + * details. * - * You should have received a copy of the GNU General Public License - * along with Privacy Browser PC. If not, see . + * You should have received a copy of the GNU General Public License along with + * this program. If not, see . */ #ifndef COOKIESDIALOG_H @@ -22,8 +22,13 @@ // Qt toolkit headers. #include +#include #include -#include +#include +#include + +// C++ headers. +#include class CookiesDialog : public QDialog { @@ -31,23 +36,41 @@ class CookiesDialog : public QDialog Q_OBJECT public: - // The default constructor. - explicit CookiesDialog(QList *cookieListPointer); + // The primary constructor. + explicit CookiesDialog(std::list *cookieListPointer); -signals: +Q_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(); void showDeleteAllMessageBox() const; + void showDeleteCookieMessageBox() const; + void showDurableCookiesDialog(); + void showEditCookieDialog(); + void updateUi() const; private: // The private variables. - QList *cookieListPointer; - QVBoxLayout *cookiesVBoxLayoutPointer; + QPushButton *addCookieButtonPointer; + std::list *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