summaryrefslogtreecommitdiffstats
path: root/kwallet/konfigurator/konfigurator.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kwallet/konfigurator/konfigurator.cpp')
-rw-r--r--kwallet/konfigurator/konfigurator.cpp323
1 files changed, 0 insertions, 323 deletions
diff --git a/kwallet/konfigurator/konfigurator.cpp b/kwallet/konfigurator/konfigurator.cpp
deleted file mode 100644
index dd03591..0000000
--- a/kwallet/konfigurator/konfigurator.cpp
+++ /dev/null
@@ -1,323 +0,0 @@
-/*
- Copyright (C) 2003 George Staikos <staikos@kde.org>
-
- 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 of the License, 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.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
- */
-
-#include "konfigurator.h"
-#include "walletconfigwidget.h"
-#include <dcopclient.h>
-#include <dcopref.h>
-#include <kaboutdata.h>
-#include <kapplication.h>
-#include <kconfig.h>
-#include <kdialog.h>
-#include <kgenericfactory.h>
-#include <kinputdialog.h>
-#include <kpopupmenu.h>
-#include <kwallet.h>
-
-#include <tqcheckbox.h>
-#include <tqcombobox.h>
-#include <tqlayout.h>
-#include <tqlistview.h>
-#include <tqpushbutton.h>
-#include <tqspinbox.h>
-
-typedef KGenericFactory<KWalletConfig, TQWidget> KWalletFactory;
-K_EXPORT_COMPONENT_FACTORY(kcm_kwallet, KWalletFactory("kcmkwallet"))
-
-KWalletConfig::KWalletConfig(TQWidget *parent, const char *name, const TQStringList&)
-: TDECModule(KWalletFactory::instance(), parent, name) {
-
- TDEAboutData *about =
- new TDEAboutData(I18N_NOOP("kcmkwallet"),
- I18N_NOOP("TDE Wallet Control Module"),
- 0, 0, TDEAboutData::License_GPL,
- I18N_NOOP("(c) 2003 George Staikos"));
- about->addAuthor("George Staikos", 0, "staikos@kde.org");
- setAboutData( about );
-
- _cfg = new TDEConfig("kwalletrc", false, false);
-
- TQVBoxLayout *vbox = new TQVBoxLayout(this, 0, KDialog::spacingHint());
- vbox->add(_wcw = new WalletConfigWidget(this));
-
- connect(_wcw->_enabled, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_launchManager, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_autocloseManager, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_autoclose, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_closeIdle, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_openPrompt, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_screensaverLock, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_localWalletSelected, TQT_SIGNAL(clicked()), this, TQT_SLOT(configChanged()));
- connect(_wcw->_idleTime, TQT_SIGNAL(valueChanged(int)), this, TQT_SLOT(configChanged()));
- connect(_wcw->_launch, TQT_SIGNAL(clicked()), this, TQT_SLOT(launchManager()));
- connect(_wcw->_newWallet, TQT_SIGNAL(clicked()), this, TQT_SLOT(newNetworkWallet()));
- connect(_wcw->_newLocalWallet, TQT_SIGNAL(clicked()), this, TQT_SLOT(newLocalWallet()));
- connect(_wcw->_localWallet, TQT_SIGNAL(activated(int)), this, TQT_SLOT(configChanged()));
- connect(_wcw->_defaultWallet, TQT_SIGNAL(activated(int)), this, TQT_SLOT(configChanged()));
- connect(_wcw->_accessList, TQT_SIGNAL(contextMenuRequested(TQListViewItem*, const TQPoint&, int)), this, TQT_SLOT(contextMenuRequested(TQListViewItem*, const TQPoint&, int)));
-
- _wcw->_accessList->setAllColumnsShowFocus(true);
- updateWalletLists();
- load();
-
- if (DCOPClient::mainClient()->isApplicationRegistered("kwalletmanager")) {
- _wcw->_launch->hide();
- }
-
-}
-
-
-KWalletConfig::~KWalletConfig() {
- delete _cfg;
- _cfg = 0L;
-}
-
-
-void KWalletConfig::updateWalletLists() {
- TQString p1, p2;
- p1 = _wcw->_localWallet->currentText();
- p2 = _wcw->_defaultWallet->currentText();
-
- _wcw->_localWallet->clear();
- _wcw->_defaultWallet->clear();
-
- TQStringList wl = KWallet::Wallet::walletList();
- _wcw->_localWallet->insertStringList(wl);
- _wcw->_defaultWallet->insertStringList(wl);
-
- if (wl.contains(p1)) {
- _wcw->_localWallet->setCurrentText(p1);
- }
-
- if (wl.contains(p2)) {
- _wcw->_defaultWallet->setCurrentText(p2);
- }
-}
-
-
-TQString KWalletConfig::newWallet() {
- bool ok;
-
- TQString n = KInputDialog::getText(i18n("New Wallet"),
- i18n("Please choose a name for the new wallet:"),
- TQString(),
- &ok,
- this);
-
- if (!ok) {
- return TQString();
- }
-
- KWallet::Wallet *w = KWallet::Wallet::openWallet(n);
- if (!w) {
- return TQString();
- }
-
- delete w;
- return n;
-}
-
-
-void KWalletConfig::newLocalWallet() {
- TQString n = newWallet();
- if (n.isEmpty()) {
- return;
- }
-
- updateWalletLists();
-
- _wcw->_localWallet->setCurrentText(n);
-
- emit changed(true);
-}
-
-
-void KWalletConfig::newNetworkWallet() {
- TQString n = newWallet();
- if (n.isEmpty()) {
- return;
- }
-
- updateWalletLists();
-
- _wcw->_defaultWallet->setCurrentText(n);
-
- emit changed(true);
-}
-
-
-void KWalletConfig::launchManager() {
- if (!DCOPClient::mainClient()->isApplicationRegistered("kwalletmanager")) {
- TDEApplication::startServiceByDesktopName("kwalletmanager_show");
- } else {
- DCOPRef r("kwalletmanager", "kwalletmanager-mainwindow#1");
- r.send("show");
- r.send("raise");
- }
-}
-
-
-void KWalletConfig::configChanged() {
- emit changed(true);
-}
-
-void KWalletConfig::load() {
- load( false );
-}
-
-void KWalletConfig::load(bool useDefaults) {
- TDEConfigGroup config(_cfg, "Wallet");
- config.setReadDefaults( useDefaults );
- _wcw->_enabled->setChecked(config.readBoolEntry("Enabled", true));
- _wcw->_openPrompt->setChecked(config.readBoolEntry("Prompt on Open", true));
- _wcw->_launchManager->setChecked(config.readBoolEntry("Launch Manager", true));
- _wcw->_autocloseManager->setChecked(! config.readBoolEntry("Leave Manager Open", false));
- _wcw->_screensaverLock->setChecked(config.readBoolEntry("Close on Screensaver", false));
- _wcw->_autoclose->setChecked(!config.readBoolEntry("Leave Open", false));
- _wcw->_closeIdle->setChecked(config.readBoolEntry("Close When Idle", false));
- _wcw->_idleTime->setValue(config.readNumEntry("Idle Timeout", 10));
- if (config.hasKey("Default Wallet")) {
- _wcw->_defaultWallet->setCurrentText(config.readEntry("Default Wallet"));
- } else {
- _wcw->_defaultWallet->setCurrentItem(0);
- }
- if (config.hasKey("Local Wallet")) {
- _wcw->_localWalletSelected->setChecked( !config.readBoolEntry("Use One Wallet") );
- _wcw->_localWallet->setCurrentText(config.readEntry("Local Wallet"));
- } else {
- _wcw->_localWalletSelected->setChecked(false);
- }
- _wcw->_accessList->clear();
- _cfg->setGroup("Auto Deny");
- TQStringList denykeys = _cfg->entryMap("Auto Deny").keys();
- _cfg->setGroup("Auto Allow");
- TQStringList keys = _cfg->entryMap("Auto Allow").keys();
- for (TQStringList::Iterator i = keys.begin(); i != keys.end(); ++i) {
- _cfg->setGroup("Auto Allow");
- TQStringList apps = _cfg->readListEntry(*i);
- _cfg->setGroup("Auto Deny");
- TQStringList denyapps = _cfg->readListEntry(*i);
- denykeys.remove(*i);
- TQListViewItem *lvi = new TQListViewItem(_wcw->_accessList, *i);
- for (TQStringList::Iterator j = apps.begin(); j != apps.end(); ++j) {
- new TQListViewItem(lvi, TQString(), *j, i18n("Always Allow"));
- }
- for (TQStringList::Iterator j = denyapps.begin(); j != denyapps.end(); ++j) {
- new TQListViewItem(lvi, TQString(), *j, i18n("Always Deny"));
- }
- }
- _cfg->setGroup("Auto Deny");
- for (TQStringList::Iterator i = denykeys.begin(); i != denykeys.end(); ++i) {
- TQStringList denyapps = _cfg->readListEntry(*i);
- TQListViewItem *lvi = new TQListViewItem(_wcw->_accessList, *i);
- for (TQStringList::Iterator j = denyapps.begin(); j != denyapps.end(); ++j) {
- new TQListViewItem(lvi, TQString(), *j, i18n("Always Deny"));
- }
- }
- emit changed(useDefaults);
-}
-
-
-void KWalletConfig::save() {
- TDEConfigGroup config(_cfg, "Wallet");
- config.writeEntry("Enabled", _wcw->_enabled->isChecked());
- config.writeEntry("Launch Manager", _wcw->_launchManager->isChecked());
- config.writeEntry("Leave Manager Open", !_wcw->_autocloseManager->isChecked());
- config.writeEntry("Leave Open", !_wcw->_autoclose->isChecked());
- config.writeEntry("Close When Idle", _wcw->_closeIdle->isChecked());
- config.writeEntry("Idle Timeout", _wcw->_idleTime->value());
- config.writeEntry("Prompt on Open", _wcw->_openPrompt->isChecked());
- config.writeEntry("Close on Screensaver", _wcw->_screensaverLock->isChecked());
-
- config.writeEntry("Use One Wallet", !_wcw->_localWalletSelected->isChecked());
- if (_wcw->_localWalletSelected->isChecked()) {
- config.writeEntry("Local Wallet", _wcw->_localWallet->currentText());
- } else {
- config.deleteEntry("Local Wallet");
- }
-
- if (_wcw->_defaultWallet->currentItem() != -1) {
- config.writeEntry("Default Wallet", _wcw->_defaultWallet->currentText());
- } else {
- config.deleteEntry("Default Wallet");
- }
-
- // FIXME: won't survive a language change
- _cfg->deleteGroup("Auto Allow");
- _cfg->deleteGroup("Auto Deny");
- _cfg->setGroup("Auto Allow");
- for (TQListViewItem *i = _wcw->_accessList->firstChild(); i; i = i->nextSibling()) {
- TQStringList al;
- for (TQListViewItem *j = i->firstChild(); j; j = j->nextSibling()) {
- if (j->text(2) == i18n("Always Allow")) {
- al << j->text(1);
- }
- }
- _cfg->writeEntry(i->text(0), al);
- }
-
- _cfg->setGroup("Auto Deny");
- for (TQListViewItem *i = _wcw->_accessList->firstChild(); i; i = i->nextSibling()) {
- TQStringList al;
- for (TQListViewItem *j = i->firstChild(); j; j = j->nextSibling()) {
- if (j->text(2) == i18n("Always Deny")) {
- al << j->text(1);
- }
- }
- _cfg->writeEntry(i->text(0), al);
- }
-
- _cfg->sync();
- DCOPRef("kded", "kwalletd").call("reconfigure()");
-
- emit changed(false);
-}
-
-
-void KWalletConfig::defaults() {
- load( true );
-}
-
-
-TQString KWalletConfig::quickHelp() const {
- return i18n("This configuration module allows you to configure the KDE wallet system.");
-}
-
-
-void KWalletConfig::contextMenuRequested(TQListViewItem *item, const TQPoint& pos, int col) {
- Q_UNUSED(col)
- if (item && item->parent()) {
- KPopupMenu *m = new KPopupMenu(this);
- m->insertTitle(item->parent()->text(0));
- m->insertItem(i18n("&Delete"), this, TQT_SLOT(deleteEntry()), Key_Delete);
- m->popup(pos);
- }
-}
-
-
-void KWalletConfig::deleteEntry() {
- TQListViewItem *item = _wcw->_accessList->selectedItem();
- if (item) {
- delete item;
- emit changed(true);
- }
-}
-
-#include "konfigurator.moc"
-