summaryrefslogtreecommitdiff
path: root/src/cookieexceptiondialog.h
diff options
context:
space:
mode:
authoradjam <adjam@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-06-02 22:41:57 +0000
committeradjam <adjam@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-06-02 22:41:57 +0000
commitc9d8f10a2a361dd5dffa5d61b96bc96f0d50129d (patch)
treea2c949860fb01f2efb3dfd3b439a726a4e3ea753 /src/cookieexceptiondialog.h
parentMerge branch 'master' into local-svn (diff)
parentnew cookie management system. That (hopefully) works well..;) (diff)
downloadrekonq-c9d8f10a2a361dd5dffa5d61b96bc96f0d50129d.tar.xz
Merge branch 'master' into local-svn
git-svn-id: svn+ssh://svn.kde.org/home/kde/trunk/playground/network/rekonq@976901 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'src/cookieexceptiondialog.h')
-rw-r--r--src/cookieexceptiondialog.h94
1 files changed, 94 insertions, 0 deletions
diff --git a/src/cookieexceptiondialog.h b/src/cookieexceptiondialog.h
new file mode 100644
index 00000000..eb0608d1
--- /dev/null
+++ b/src/cookieexceptiondialog.h
@@ -0,0 +1,94 @@
+/* ============================================================
+*
+* This file is a part of the rekonq project
+*
+* Copyright (C) 2009 by Andrea Diamantini <adjam7 at gmail dot com>
+*
+*
+* 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 2, or (at your option) any later version.
+*
+* 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.
+*
+* ============================================================ */
+
+
+#ifndef COOKIEEXCEPTIONDIALOG_H
+#define COOKIEEXCEPTIONDIALOG_H
+
+
+// Local Includes
+#include "cookiejar.h"
+
+// Qt Includes
+#include <QtCore/QAbstractTableModel>
+
+// Forward Declarations
+class QString;
+class QStringList;
+class QModelIndex;
+class QVariant;
+
+class CookieExceptionsModel : public QAbstractTableModel
+{
+ Q_OBJECT
+ friend class CookiesExceptionsDialog;
+
+public:
+ explicit CookieExceptionsModel(CookieJar *cookieJar, QObject *parent = 0);
+
+ QVariant headerData(int section, Qt::Orientation orientation, int role) const;
+ QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
+ int columnCount(const QModelIndex &parent = QModelIndex()) const;
+ int rowCount(const QModelIndex &parent = QModelIndex()) const;
+ bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex());
+
+private:
+ CookieJar *m_cookieJar;
+
+ // Domains we allow, Domains we block, Domains we allow for this session
+ QStringList m_allowedCookies;
+ QStringList m_blockedCookies;
+ QStringList m_sessionCookies;
+};
+
+
+// -----------------------------------------------------------------------------------------------
+
+
+// Ui Includes
+#include "ui_cookiesexceptions.h"
+
+//Forward Declarations
+class QSortFilterProxyModel;
+
+
+class CookiesExceptionsDialog : public KDialog
+{
+ Q_OBJECT
+
+public:
+ explicit CookiesExceptionsDialog(CookieJar *cookieJar, QWidget *parent = 0);
+
+ QSize sizeHint() const;
+
+private slots:
+ void block();
+ void allow();
+ void allowForSession();
+ void textChanged(const QString &text);
+
+private:
+ CookieExceptionsModel *m_exceptionsModel;
+ QSortFilterProxyModel *m_proxyModel;
+ CookieJar *m_cookieJar;
+
+ Ui::CookiesExceptionsWidget *m_exceptionsWidget;
+};
+
+#endif