summaryrefslogtreecommitdiffstats
path: root/kcontrol/kio/kcookiesmain.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kcontrol/kio/kcookiesmain.cpp')
-rw-r--r--kcontrol/kio/kcookiesmain.cpp99
1 files changed, 99 insertions, 0 deletions
diff --git a/kcontrol/kio/kcookiesmain.cpp b/kcontrol/kio/kcookiesmain.cpp
new file mode 100644
index 000000000..f25a28011
--- /dev/null
+++ b/kcontrol/kio/kcookiesmain.cpp
@@ -0,0 +1,99 @@
+// kcookiesmain.cpp - Cookies configuration
+//
+// First version of cookies configuration by Waldo Bastian <bastian@kde.org>
+// This dialog box created by David Faure <faure@kde.org>
+
+#include <qlayout.h>
+#include <qtabwidget.h>
+
+#include <klocale.h>
+#include <kapplication.h>
+#include <kmessagebox.h>
+#include <kdebug.h>
+#include <dcopref.h>
+
+#include "kcookiesmain.h"
+#include "kcookiespolicies.h"
+#include "kcookiesmanagement.h"
+
+KCookiesMain::KCookiesMain(QWidget *parent)
+ : KCModule(parent, "kcmkio")
+{
+ management = 0;
+ bool managerOK = true;
+
+ DCOPReply reply = DCOPRef( "kded", "kded" ).call( "loadModule",
+ QCString( "kcookiejar" ) );
+
+ if( !reply.isValid() )
+ {
+ managerOK = false;
+ kdDebug(7103) << "kcm_kio: KDED could not load KCookiejar!" << endl;
+ KMessageBox::sorry(0, i18n("Unable to start the cookie handler service.\n"
+ "You will not be able to manage the cookies that "
+ "are stored on your computer."));
+ }
+
+ QVBoxLayout *layout = new QVBoxLayout(this);
+ tab = new QTabWidget(this);
+ layout->addWidget(tab);
+
+ policies = new KCookiesPolicies(this);
+ tab->addTab(policies, i18n("&Policy"));
+ connect(policies, SIGNAL(changed(bool)), SIGNAL(changed(bool)));
+
+ if( managerOK )
+ {
+ management = new KCookiesManagement(this);
+ tab->addTab(management, i18n("&Management"));
+ connect(management, SIGNAL(changed(bool)), SIGNAL(changed(bool)));
+ }
+}
+
+KCookiesMain::~KCookiesMain()
+{
+}
+
+void KCookiesMain::load()
+{
+ policies->load();
+ if( management )
+ management->load();
+}
+
+void KCookiesMain::save()
+{
+ policies->save();
+ if ( management )
+ management->save();
+}
+
+void KCookiesMain::defaults()
+{
+ KCModule* module = static_cast<KCModule*>(tab->currentPage());
+
+ if ( module == policies )
+ policies->defaults();
+ else if( management )
+ management->defaults();
+}
+
+QString KCookiesMain::quickHelp() const
+{
+ return i18n("<h1>Cookies</h1> Cookies contain information that Konqueror"
+ " (or other KDE applications using the HTTP protocol) stores on your"
+ " computer, initiated by a remote Internet server. This means that"
+ " a web server can store information about you and your browsing activities"
+ " on your machine for later use. You might consider this an invasion of"
+ " privacy. <p> However, cookies are useful in certain situations. For example, they"
+ " are often used by Internet shops, so you can 'put things into a shopping basket'."
+ " Some sites require you have a browser that supports cookies. <p>"
+ " Because most people want a compromise between privacy and the benefits cookies offer,"
+ " KDE offers you the ability to customize the way it handles cookies. So you might want"
+ " to set KDE's default policy to ask you whenever a server wants to set a cookie,"
+ " allowing you to decide. For your favorite shopping web sites that you trust, you might"
+ " want to set the policy to accept, then you can access the web sites without being prompted"
+ " every time KDE receives a cookie." );
+}
+
+#include "kcookiesmain.moc"