File indexing completed on 2025-11-09 11:08:57

0001 /*
0002     This file is part of the KDE File Manager
0003     SPDX-FileCopyrightText: 1998 Waldo Bastian <bastian@kde.org>
0004     SPDX-FileCopyrightText: 2000 Dawit Alemayehu <adawit@kde.org>
0005 
0006     SPDX-License-Identifier: GPL-2.0-or-later
0007 */
0008 
0009 // KDE File Manager -- HTTP Cookie Dialogs
0010 
0011 #ifndef KCOOKIEWIN_H
0012 #define KCOOKIEWIN_H
0013 
0014 #include "kcookiejar.h"
0015 #include <QDialog>
0016 #include <QGroupBox>
0017 #include <QRadioButton>
0018 
0019 class QLineEdit;
0020 class QPushButton;
0021 
0022 class KCookieDetail : public QGroupBox
0023 {
0024     Q_OBJECT
0025 
0026 public:
0027     KCookieDetail(const KHttpCookieList &cookieList, int cookieCount, QWidget *parent = nullptr);
0028     ~KCookieDetail() override;
0029 
0030 private Q_SLOTS:
0031     void slotNextCookie();
0032 
0033 private:
0034     void displayCookieDetails();
0035 
0036     QLineEdit *m_name;
0037     QLineEdit *m_value;
0038     QLineEdit *m_expires;
0039     QLineEdit *m_domain;
0040     QLineEdit *m_path;
0041     QLineEdit *m_secure;
0042 
0043     KHttpCookieList m_cookieList;
0044     int m_cookieNumber;
0045 };
0046 
0047 class KCookieWin : public QDialog
0048 {
0049     Q_OBJECT
0050 
0051 public:
0052     KCookieWin(QWidget *parent, KHttpCookieList cookieList, int defaultButton = 0, bool showDetails = false);
0053     ~KCookieWin() override;
0054 
0055     KCookieAdvice advice(KCookieJar *cookiejar, const KHttpCookie &cookie);
0056 
0057 private Q_SLOTS:
0058     void slotSessionOnlyClicked();
0059     void slotToggleDetails();
0060 
0061 private:
0062     QPushButton *m_detailsButton;
0063     QRadioButton *m_onlyCookies, *m_allCookies, *m_allCookiesDomain;
0064     KCookieDetail *m_detailView;
0065 };
0066 
0067 #endif