summaryrefslogtreecommitdiffstats
path: root/kwallet/allyourbase.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-26 13:18:06 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-26 13:18:06 -0600
commit79fd2b2bbd9f842ce3c84c67e3314033a9cceea4 (patch)
treed6d2174614dc2384de6f77a930aaf3d06b276fae /kwallet/allyourbase.cpp
parentc3e3301aba81e1c1771fa309941888a8b0fb59bc (diff)
downloadtdeutils-79fd2b2bbd9f842ce3c84c67e3314033a9cceea4.tar.gz
tdeutils-79fd2b2bbd9f842ce3c84c67e3314033a9cceea4.zip
Rename a number of libraries and executables to avoid conflicts with KDE4
Diffstat (limited to 'kwallet/allyourbase.cpp')
-rw-r--r--kwallet/allyourbase.cpp733
1 files changed, 0 insertions, 733 deletions
diff --git a/kwallet/allyourbase.cpp b/kwallet/allyourbase.cpp
deleted file mode 100644
index b75a04f..0000000
--- a/kwallet/allyourbase.cpp
+++ /dev/null
@@ -1,733 +0,0 @@
-/*
- Copyright (C) 2003-2005 George Staikos <staikos@kde.org>
- Copyright (C) 2005 Isaac Clerencia <isaac@warp.es>
-
- 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 "allyourbase.h"
-
-#include <kapplication.h>
-#include <kdebug.h>
-#include <kglobal.h>
-#include <kio/netaccess.h>
-#include <klocale.h>
-#include <kmessagebox.h>
-#include <kstandarddirs.h>
-#include <kurl.h>
-#include <kurldrag.h>
-#include <kwallet.h>
-
-#include <tqdragobject.h>
-#include <tqfile.h>
-#include <tqptrlist.h>
-
-/****************
- * KWalletFolderItem - ListView items to represent kwallet folders
- */
-KWalletFolderItem::KWalletFolderItem(KWallet::Wallet *w, TQListView* parent, const TQString &name, int entries)
-: KListViewItem(parent),_wallet(w),_name(name),_entries(entries) {
- setText(0, TQString("%1 (%2)").arg(_name).arg(_entries));
- setRenameEnabled(0, false);
- setDragEnabled(true);
- setDropEnabled(true);
-
- TQPixmap pix = getFolderIcon(KIcon::Small);
-
- setPixmap(0,pix);
-}
-
-TQPixmap KWalletFolderItem::getFolderIcon(KIcon::Group group){
- KIconLoader *loader = TDEGlobal::instance()->iconLoader();
- TQPixmap pix = loader->loadIcon( _name, group, 0,
- KIcon::DefaultState, 0, true );
- if (pix.isNull())
- pix = loader->loadIcon( _name.lower(), group, 0,
- KIcon::DefaultState, 0, true);
- if (pix.isNull())
- pix = loader->loadIcon( "folder_red", group, 0,
- KIcon::DefaultState, 0, true);
- return pix;
-}
-
-void KWalletFolderItem::refresh() {
- TQString saveFolder = _wallet->currentFolder();
- _wallet->setFolder(_name);
- setText(0, TQString("%1 (%2)").arg(_name).arg(_wallet->entryList().count()));
- _wallet->setFolder(saveFolder);
-}
-
-KWalletContainerItem* KWalletFolderItem::getContainer(KWallet::Wallet::EntryType type) {
- for (TQListViewItem *i = firstChild(); i; i = i->nextSibling()) {
- KWalletContainerItem *ci = dynamic_cast<KWalletContainerItem *>(i);
- if (!ci) {
- continue;
- }
- if (ci->type() == type) {
- return ci;
- }
- }
- return 0;
-}
-
-bool KWalletFolderItem::contains(const TQString& key) {
- return (getItem(key) != 0);
-}
-
-TQListViewItem* KWalletFolderItem::getItem(const TQString& key) {
- for (TQListViewItem *i = firstChild(); i; i = i->nextSibling()) {
- KWalletContainerItem *ci = dynamic_cast<KWalletContainerItem *>(i);
- if (!ci) {
- continue;
- }
- TQListViewItem *tmp = ci->getItem(key);
- if (tmp) {
- return tmp;
- }
- }
- return 0;
-}
-
-bool KWalletFolderItem::acceptDrop(const TQMimeSource *mime) const {
- return mime->provides("application/x-kwallet-entry") ||
- mime->provides("text/uri-list");
-}
-
-int KWalletFolderItem::rtti() const {
- return KWalletFolderItemClass;
-}
-
-TQString KWalletFolderItem::name() const {
- return _name;
-}
-
-KWalletFolderItem::~KWalletFolderItem() {
-}
-
-/****************
- * KWalletContainerItem - ListView items to represent kwallet containers, i.e.
- * passwords, maps, ...
- */
-KWalletContainerItem::KWalletContainerItem(TQListViewItem* parent, const TQString &name, KWallet::Wallet::EntryType type)
-: KListViewItem(parent, name), _type(type) {
- setRenameEnabled(0, false);
- setDragEnabled(true);
-}
-
-KWalletContainerItem::~KWalletContainerItem() {
-}
-
-int KWalletContainerItem::rtti() const {
- return KWalletContainerItemClass;
-}
-
-KWallet::Wallet::EntryType KWalletContainerItem::type() {
- return _type;
-}
-
-bool KWalletContainerItem::contains(const TQString& key) {
- return getItem(key) != 0;
-}
-
-TQListViewItem *KWalletContainerItem::getItem(const TQString& key) {
- for (TQListViewItem *i = firstChild(); i; i = i->nextSibling()) {
- if (i->text(0) == key) {
- return i;
- }
- }
- return 0;
-}
-
-/****************
- * KWalletEntryItem - ListView items to represent kwallet entries
- */
-KWalletEntryItem::KWalletEntryItem(KWallet::Wallet *w, TQListViewItem* parent, const TQString& ename)
-: KListViewItem(parent, ename), _wallet(w), _oldName(ename) {
- setRenameEnabled(0, true);
- setDragEnabled(true);
-}
-
-int KWalletEntryItem::rtti() const {
- return KWalletEntryItemClass;
-}
-
-KWalletEntryItem::~KWalletEntryItem() {
-}
-
-/****************
- * KWalletItem - IconView items to represent wallets
- */
-KWalletItem::KWalletItem(TQIconView *parent, const TQString& walletName)
-: TQIconViewItem(parent, walletName, DesktopIcon("kwalletmanager")) {
-}
-
-KWalletItem::~KWalletItem() {
-}
-
-bool KWalletItem::acceptDrop(const TQMimeSource *mime) const {
- return mime->provides("application/x-kwallet-folder") ||
- mime->provides("text/uri-list");
-}
-
-static bool decodeEntry(KWallet::Wallet *_wallet, TQDataStream& ds) {
- TQ_UINT32 magic;
- ds >> magic;
- if (magic != KWALLETENTRYMAGIC) {
- kdDebug() << "bad magic" << endl;
- return false;
- }
- TQString name;
- TQByteArray value;
- KWallet::Wallet::EntryType et;
- ds >> name;
- if (_wallet->hasEntry(name)) {
- int rc = KMessageBox::warningContinueCancel(0L, i18n("An entry by the name '%1' already exists. Would you like to continue?").arg(name));
- if (rc == KMessageBox::Cancel) {
- return false;
- }
- }
- long l;
- ds >> l;
- et = KWallet::Wallet::EntryType(l);
- ds >> value;
- _wallet->writeEntry(name, value, et);
- return true;
-}
-
-static bool decodeFolder(KWallet::Wallet *_wallet, TQDataStream& ds) {
- TQ_UINT32 magic;
- ds >> magic;
- if (magic != KWALLETFOLDERMAGIC) {
- kdDebug() << "bad magic" << endl;
- return false;
- }
- TQString folder;
- ds >> folder;
- if (_wallet->hasFolder(folder)) {
- int rc = KMessageBox::warningYesNoCancel(0L, i18n("A folder by the name '%1' already exists. What would you like to do?").arg(folder), TQString(), KStdGuiItem::cont(), i18n("Replace"));
- if (rc == KMessageBox::Cancel) {
- return false;
- }
- if (rc == KMessageBox::No) {
- _wallet->removeFolder(folder);
- _wallet->createFolder(folder);
- }
- } else {
- _wallet->createFolder(folder);
- }
-
- _wallet->setFolder(folder);
- while (!ds.atEnd()) {
- TQString name;
- TQByteArray value;
- KWallet::Wallet::EntryType et;
- ds >> name;
- long l;
- ds >> l;
- et = KWallet::Wallet::EntryType(l);
- ds >> value;
- _wallet->writeEntry(name, value, et);
- }
- return true;
-}
-
-void KWalletItem::dropped(TQDropEvent *e, const TQValueList<TQIconDragItem>& lst) {
- Q_UNUSED(lst);
- if (e->provides("application/x-kwallet-folder") ||
- e->provides("text/uri-list")) {
-
- // FIXME: don't allow the drop if the wallet name is the same
-
- KWallet::Wallet *_wallet = KWallet::Wallet::openWallet(text());
- if (!_wallet) {
- e->ignore();
- return;
- }
-
- TQString saveFolder = _wallet->currentFolder();
-
- TQFile file;
- TQDataStream *ds = 0L;
-
- if (e->provides("application/x-kwallet-folder")) {
- TQByteArray edata = e->encodedData("application/x-kwallet-folder");
- if (!edata.isEmpty()) {
- ds = new TQDataStream(edata, IO_ReadOnly);
- }
- } else { // text/uri-list
- TQStrList urls;
- TQUriDrag::decode(e, urls);
-
- if (urls.isEmpty()) {
- e->ignore();
- return;
- }
-
- KURL u(urls.first());
- if (u.fileName().isEmpty()) {
- e->ignore();
- return;
- }
- TQString tmpFile;
- if (TDEIO::NetAccess::download(u, tmpFile, 0L)) {
- file.setName(tmpFile);
- file.open(IO_ReadOnly);
- ds = new TQDataStream(&file);
- TDEIO::NetAccess::removeTempFile(tmpFile);
- } else {
- KMessageBox::error(iconView(), TDEIO::NetAccess::lastErrorString());
- }
- }
- if (ds) {
- decodeFolder(_wallet, *ds);
- delete ds;
- }
- _wallet->setFolder(saveFolder);
- delete _wallet;
-
- //delete the folder from the source if we were moving
- TQt::ButtonState state = kapp->keyboardMouseState();
- if (e->source() && e->source()->parent() &&
- !strcmp(e->source()->parent()->className(), "KWalletEntryList") &&
- !(state & TQt::ControlButton)) {
-
- KWalletEntryList *el =
- dynamic_cast<KWalletEntryList*>(e->source()->parent());
- if (el) {
- KWalletFolderItem *fi =
- dynamic_cast<KWalletFolderItem*>(el->selectedItem());
- if (fi) {
- el->_wallet->removeFolder(fi->name());
- }
- }
- }
- e->accept();
- } else {
- e->ignore();
- return;
- }
-}
-
-/****************
- * KWalletEntryDrag - Stores data for wallet entry drags
- */
-class KWalletEntryDrag : public TQStoredDrag {
- public:
- KWalletEntryDrag(TQWidget *dragSource, const char *name = 0L)
- : TQStoredDrag("application/x-kwallet-entry", dragSource, name) {
- }
-
- virtual ~KWalletEntryDrag() {}
-};
-
-/****************
- * KWalletFolderDrag - Stores data for wallet folder drags
- */
-class KWalletFolderDrag : public TQStoredDrag {
- public:
- KWalletFolderDrag(TQWidget *dragSource, const char *name = 0L)
- : TQStoredDrag("application/x-kwallet-folder", dragSource, name) {
- }
-
- virtual ~KWalletFolderDrag() {}
-};
-
-/****************
- * KWalletEntryList - A listview to store wallet entries
- */
-KWalletEntryList::KWalletEntryList(TQWidget *parent, const char *name)
-: KListView(parent, name) {
- addColumn(i18n("Folders"));
- setRootIsDecorated(true);
- setDefaultRenameAction(Reject);
- setAcceptDrops(true);
- setItemsMovable(false);
- setDropVisualizer(false);
- viewport()->setAcceptDrops(true);
-}
-
-KWalletEntryList::~KWalletEntryList() {
-}
-
-bool KWalletEntryList::acceptDrag(TQDropEvent* e) const {
- TQListViewItem *i = itemAt(contentsToViewport(e->pos()));
- if (i) {
- if (e->provides("application/x-kwallet-entry") ||
- e->provides("text/uri-list")) {
- return true;
- }
- }
- if ((e->provides("application/x-kwallet-folder") &&
- e->source() != viewport()) ||
- e->provides("text/uri-list")) {
- return true;
- }
- return false;
-}
-
-//returns true if the item has been dropped successfully
-void KWalletEntryList::itemDropped(TQDropEvent *e, TQListViewItem *item) {
- bool ok = true;
- bool isEntry;
- TQFile file;
- TQDataStream *ds;
-
- KWalletEntryList *el = 0L;
- TQListViewItem *sel = 0L;
-
- //detect if we are dragging from kwallet itself
- if (e->source() && e->source()->parent() &&
- !strcmp(e->source()->parent()->className(), "KWalletEntryList")) {
-
- el = dynamic_cast<KWalletEntryList*>(e->source()->parent());
- if (!el) {
- KMessageBox::error(this, i18n("An unexpected error occurred trying to drop the item"));
- } else
- sel = el->selectedItem();
- }
-
- if (e->provides("application/x-kwallet-entry")) {
- //do nothing if we are in the same folder
- if (sel && sel->parent()->parent() ==
- KWalletEntryList::getItemFolder(item)) {
- e->ignore();
- return;
- }
- isEntry = true;
- TQByteArray data = e->encodedData("application/x-kwallet-entry");
- if (data.isEmpty()) {
- e->ignore();
- return;
- }
- ds = new TQDataStream(data, IO_ReadOnly);
- } else if (e->provides("application/x-kwallet-folder")) {
- //do nothing if we are in the same wallet
- if (this == el) {
- e->ignore();
- return;
- }
- isEntry = false;
- TQByteArray data = e->encodedData("application/x-kwallet-folder");
- if (data.isEmpty()) {
- e->ignore();
- return;
- }
- ds = new TQDataStream(data, IO_ReadOnly);
- } else if (e->provides("text/uri-list")) {
- TQStrList urls;
- TQUriDrag::decode(e, urls);
- if (urls.isEmpty()) {
- e->ignore();
- return;
- }
- KURL u(urls.first());
- if (u.fileName().isEmpty()) {
- e->ignore();
- return;
- }
- TQString tmpFile;
- if (TDEIO::NetAccess::download(u, tmpFile, 0L)) {
- file.setName(tmpFile);
- file.open(IO_ReadOnly);
- ds = new TQDataStream(&file);
- //check magic to discover mime type
- TQ_UINT32 magic;
- (*ds) >> magic;
- if (magic == KWALLETENTRYMAGIC) {
- isEntry = true;
- } else if (magic == KWALLETFOLDERMAGIC) {
- isEntry = false;
- } else {
- kdDebug() << "bad magic" << endl;
- e->ignore();
- return;
- }
- delete ds;
- //set the file back to the beginning
- file.reset();
- ds = new TQDataStream(&file);
- TDEIO::NetAccess::removeTempFile(tmpFile);
- } else {
- KMessageBox::error(this, TDEIO::NetAccess::lastErrorString());
- return;
- }
- } else {
- e->ignore();
- return;
- }
- TQt::ButtonState state = kapp->keyboardMouseState();
- if (isEntry) {
- if (!item) {
- e->ignore();
- return;
- }
- KWalletFolderItem *fi = KWalletEntryList::getItemFolder(item);
- if (!fi) {
- KMessageBox::error(this, i18n("An unexpected error occurred trying to drop the entry"));
- delete(ds);
- e->accept();
- return;
- }
- TQString saveFolder = _wallet->currentFolder();
- _wallet->setFolder(fi->name());
- ok = decodeEntry(_wallet, *ds);
- _wallet->setFolder(saveFolder);
- fi->refresh();
- delete(ds);
- //delete source if we were moving, i.e., we are dragging
- //from kwalletmanager and Control is not pressed
- if (ok && el && !(state & TQt::ControlButton) && sel) {
- el->_wallet->removeEntry(sel->text(0));
- delete sel;
- }
- e->accept();
- } else {
- ok = decodeFolder(_wallet, *ds);
- delete ds;
- //delete source if we were moving, i.e., we are dragging
- //from kwalletmanager and Control is not pressed
- if (ok && el && !(state & TQt::ControlButton) && sel) {
- KWalletFolderItem *fi = dynamic_cast<KWalletFolderItem *>(sel);
- if (fi) {
- el->_wallet->removeFolder(fi->name());
- delete sel;
- } else {
- KMessageBox::error(this, i18n("An unexpected error occurred trying to delete the original folder, but the folder has been copied successfully"));
- }
- }
- e->accept();
- }
-}
-
-void KWalletEntryList::setWallet(KWallet::Wallet *w) {
- _wallet = w;
-}
-
-bool KWalletEntryList::existsFolder(const TQString& name) {
- for (TQListViewItem *vi = firstChild(); vi; vi = vi->nextSibling()) {
- KWalletFolderItem *fi = dynamic_cast<KWalletFolderItem *>(vi);
- if (!fi) {
- continue;
- }
- if (name == fi->name()) {
- return true;
- }
- }
- return false;
-}
-
-void KWalletEntryList::contentsDropEvent(TQDropEvent *e) {
- TQListViewItem *i = itemAt(contentsToViewport(e->pos()));
- itemDropped(e, i);
-}
-
-void KWalletEntryList::contentsDragEnterEvent(TQDragEnterEvent *e) {
- if (e->provides("application/x-kwallet-entry") ||
- e->provides("application/x-kwallet-folder") ||
- e->provides("application/uri-list")) {
- e->accept();
- } else {
- e->ignore();
- }
-}
-
-KWalletFolderItem* KWalletEntryList::getFolder(const TQString& name) {
- for (TQListViewItem *vi = firstChild(); vi; vi = vi->nextSibling()) {
- KWalletFolderItem *fi = dynamic_cast<KWalletFolderItem *>(vi);
- if (!fi) {
- continue;
- }
- if (name == fi->name()) {
- return fi;
- }
- }
- return 0;
-}
-
-KWalletFolderItem *KWalletEntryList::getItemFolder(TQListViewItem *item) {
- switch (item->rtti()) {
- case KWalletFolderItemClass:
- return dynamic_cast<KWalletFolderItem *>(item);
- case KWalletContainerItemClass:
- return dynamic_cast<KWalletFolderItem *>(item->parent());
- case KWalletEntryItemClass:
- return dynamic_cast<KWalletFolderItem *>(item->parent()->parent());
- }
- return 0;
-}
-
-/****************
- * KWalletIconDrag - Stores the data for wallet drags
- */
-class KWalletIconDrag : public TQIconDrag {
- public:
- KWalletIconDrag(TQWidget *dragSource, const char *name = 0L)
- : TQIconDrag(dragSource, name) {
- }
-
- virtual ~KWalletIconDrag() {}
-
- virtual const char *format(int i = 0) const {
- if (i == 0) {
- return "application/x-qiconlist";
- } else if (i == 1) {
- return "text/uri-list";
- }
- return 0L;
- }
-
- TQByteArray encodedData(const char *mime) const {
- TQByteArray a;
- TQCString mimetype(mime);
- if (mimetype == "application/x-qiconlist") {
- return TQIconDrag::encodedData(mime);
- } else if (mimetype == "text/uri-list") {
- TQCString s = _urls.join("\r\n").latin1();
- if (_urls.count() > 0) {
- s.append("\r\n");
- }
- a.resize(s.length() + 1);
- memcpy(a.data(), s.data(), s.length() + 1);
- }
- return a;
- }
-
- void append(const TQIconDragItem &item, const TQRect &pr,
- const TQRect &tr, const TQString &url) {
- TQIconDrag::append(item, pr, tr);
- _urls.append(url);
- }
-
- private:
- TQStringList _urls;
-};
-
-/****************
-* * KWalletIconView - An iconview to store wallets
-* */
-KWalletIconView::KWalletIconView(TQWidget *parent, const char *name)
-: KIconView(parent, name) {
- TDEGlobal::dirs()->addResourceType("kwallet", "share/apps/kwallet");
- connect(this, TQT_SIGNAL(dropped(TQDropEvent*, const TQValueList<TQIconDragItem>&)), TQT_SLOT(slotDropped(TQDropEvent*, const TQValueList<TQIconDragItem>&)));
-}
-
-KWalletIconView::~KWalletIconView() {
-}
-
-void KWalletIconView::slotDropped(TQDropEvent *e, const TQValueList<TQIconDragItem>& /*lst*/) {
- if (e->source() == viewport()) {
- e->ignore();
- return;
- }
-
- if (!e->provides("text/uri-list")) {
- e->ignore();
- return;
- }
-
- TQByteArray edata = e->encodedData("text/uri-list");
- TQCString urls = edata.data();
-
- TQStringList ul = TQStringList::split("\r\n", urls);
- if (ul.isEmpty() || ul.first().isEmpty()) {
- e->ignore();
- return;
- }
-
- KURL u(ul.first());
-
- if (u.fileName().isEmpty()) {
- e->ignore();
- return;
- }
-
- TQString dest = TDEGlobal::dirs()->saveLocation("kwallet") + u.fileName();
- if (TQFile::exists(dest)) {
- KMessageBox::sorry(viewport(), i18n("That wallet file already exists. You cannot overwrite wallets."));
- e->ignore();
- return;
- }
-
- // FIXME: verify that it is a real wallet file first
- TDEIO::NetAccess::file_copy(u, KURL::fromPathOrURL(dest));
- e->accept();
-}
-
-void KWalletIconView::contentsMousePressEvent(TQMouseEvent *e) {
- _mousePos = e->pos();
- if (!findItem(_mousePos)) {
- clearSelection();
- }
- KIconView::contentsMousePressEvent( e );
-}
-
-TQDragObject *KWalletIconView::dragObject() {
- KWalletIconDrag* id = new KWalletIconDrag(viewport(), "KWallet Drag");
- TQString path = "file:" + TDEGlobal::dirs()->saveLocation("kwallet");
- TQPoint pos = _mousePos;
- for (TQIconViewItem *item = firstItem(); item; item = item->nextItem()) {
- if (item->isSelected()) {
- TQString url = path + item->text() + ".kwl";
- TQIconDragItem idi;
- idi.setData(url.local8Bit());
- id->append(idi,
- TQRect(item->pixmapRect(false).topLeft() - pos,
- item->pixmapRect(false).size()),
- TQRect(item->textRect(false).topLeft() - pos,
- item->textRect(false).size()),
- url);
- }
- }
-
- id->setPixmap(*currentItem()->pixmap(),
- pos - currentItem()->pixmapRect(false).topLeft());
-
- return id;
-}
-
-TQDragObject *KWalletEntryList::dragObject() {
- TQListViewItem *i = currentItem();
-
- TQStoredDrag *sd = 0L;
-
- if (i->rtti() == KWalletEntryItemClass) {
- KWalletEntryItem *ei = dynamic_cast<KWalletEntryItem*>(i);
- if (!ei) {
- return 0L;
- }
- sd = new KWalletEntryDrag(viewport(), "KWallet Entry Drag");
- TQByteArray a;
- TQDataStream ds(a, IO_WriteOnly);
- ds << KWALLETENTRYMAGIC;
- ds << *ei;
- sd->setEncodedData(a);
- } else if (i->rtti() == KWalletFolderItemClass) {
- KWalletFolderItem *fi = dynamic_cast<KWalletFolderItem*>(i);
- if (!fi) {
- return 0L;
- }
- sd = new KWalletFolderDrag(viewport(), "KWallet Folder Drag");
- TQByteArray a;
- TQDataStream ds(a, IO_WriteOnly);
-
- ds << KWALLETFOLDERMAGIC;
- ds << *fi;
- sd->setEncodedData(a);
- }
- return sd;
-}
-
-#include "allyourbase.moc"