-rw-r--r-- | pwmanager/pwmanager/pwm.cpp | 167 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwm.h | 6 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwmdocui.cpp | 17 |
3 files changed, 152 insertions, 38 deletions
diff --git a/pwmanager/pwmanager/pwm.cpp b/pwmanager/pwmanager/pwm.cpp index 0e57650..e5579f8 100644 --- a/pwmanager/pwmanager/pwm.cpp +++ b/pwmanager/pwmanager/pwm.cpp @@ -31,4 +31,5 @@ #else #include <qmenubar.h> +#include <qmessagebox.h> #endif @@ -121,4 +122,14 @@ enum { #endif }; + +#ifdef PWM_EMBEDDED +// Button IDs for "help" popup menu +enum { + BUTTON_POPUP_HELP_LICENSE = 0, + BUTTON_POPUP_HELP_FAQ, + BUTTON_POPUP_HELP_ABOUT +}; +#endif + // Button IDs for toolbar enum { @@ -173,6 +184,11 @@ PwM::~PwM() void PwM::initMenubar() { + KIconLoader* picons; +#ifndef PWM_EMBEDDED KIconLoader icons; - + picons = &icons; +#else + picons = KGlobal::iconLoader(); +#endif filePopup = new KPopupMenu(this); importPopup = new KPopupMenu(filePopup); @@ -186,18 +202,18 @@ void PwM::initMenubar() // "file" popup menu - filePopup->insertItem(QIconSet(icons.loadIcon("filenew", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("filenew", KIcon::Small)), i18n("&New"), this, SLOT(new_slot()), 0, BUTTON_POPUP_FILE_NEW); - filePopup->insertItem(QIconSet(icons.loadIcon("fileopen", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("fileopen", KIcon::Small)), i18n("&Open"), this, SLOT(open_slot()), 0, BUTTON_POPUP_FILE_OPEN); - filePopup->insertItem(QIconSet(icons.loadIcon("fileclose", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("fileclose", KIcon::Small)), i18n("&Close"), this, SLOT(close_slot()), 0, BUTTON_POPUP_FILE_CLOSE); filePopup->insertSeparator(); - filePopup->insertItem(QIconSet(icons.loadIcon("filesave", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("filesave", KIcon::Small)), i18n("&Save"), this, SLOT(save_slot()), 0, BUTTON_POPUP_FILE_SAVE); - filePopup->insertItem(QIconSet(icons.loadIcon("filesaveas", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("filesaveas", KIcon::Small)), i18n("Save &as..."), this, SLOT(saveAs_slot()), 0, @@ -213,5 +229,5 @@ void PwM::initMenubar() SLOT(exportToKWallet()), 0, BUTTON_POPUP_EXPORT_KWALLET); #endif - filePopup->insertItem(QIconSet(icons.loadIcon("fileexport", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("fileexport", KIcon::Small)), i18n("E&xport"), exportPopup, BUTTON_POPUP_FILE_EXPORT); @@ -225,29 +241,29 @@ void PwM::initMenubar() SLOT(importKWallet()), 0, BUTTON_POPUP_IMPORT_KWALLET); #endif - filePopup->insertItem(QIconSet(icons.loadIcon("fileimport", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("fileimport", KIcon::Small)), i18n("I&mport"), importPopup, BUTTON_POPUP_FILE_IMPORT); filePopup->insertSeparator(); - filePopup->insertItem(QIconSet(icons.loadIcon("fileprint", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("fileprint", KIcon::Small)), i18n("&Print..."), this, SLOT(print_slot()), 0, BUTTON_POPUP_FILE_PRINT); filePopup->insertSeparator(); - filePopup->insertItem(QIconSet(icons.loadIcon("exit", KIcon::Small)), + filePopup->insertItem(QIconSet(picons->loadIcon("exit", KIcon::Small)), i18n("&Quit"), this, SLOT(quitButton_slot()), 0, BUTTON_POPUP_FILE_QUIT); menuBar()->insertItem(i18n("&File"), filePopup); // "manage" popup menu - managePopup->insertItem(QIconSet(icons.loadIcon("pencil", KIcon::Small)), + managePopup->insertItem(QIconSet(picons->loadIcon("pencil", KIcon::Small)), i18n("&Add password"), this, SLOT(addPwd_slot()), 0, BUTTON_POPUP_MANAGE_ADD); - managePopup->insertItem(QIconSet(icons.loadIcon("edit", KIcon::Small)), + managePopup->insertItem(QIconSet(picons->loadIcon("edit", KIcon::Small)), i18n("&Edit"), this, SLOT(editPwd_slot()), 0, BUTTON_POPUP_MANAGE_EDIT); - managePopup->insertItem(QIconSet(icons.loadIcon("editdelete", KIcon::Small)), + managePopup->insertItem(QIconSet(picons->loadIcon("editdelete", KIcon::Small)), i18n("&Delete"), this, SLOT(deletePwd_slot()), 0, BUTTON_POPUP_MANAGE_DEL); managePopup->insertSeparator(); - managePopup->insertItem(QIconSet(icons.loadIcon("rotate", KIcon::Small)), + managePopup->insertItem(QIconSet(picons->loadIcon("rotate", KIcon::Small)), i18n("Change &Master Password"), this, SLOT(changeMasterPwd_slot()), 0, @@ -256,22 +272,22 @@ void PwM::initMenubar() // "chipcard" popup menu #ifdef CONFIG_KEYCARD - chipcardPopup->insertItem(QIconSet(icons.loadIcon("filenew", KIcon::Small)), + chipcardPopup->insertItem(QIconSet(picons->loadIcon("filenew", KIcon::Small)), i18n("&Generate new key-card"), this, SLOT(genNewCard_slot()), 0, BUTTON_POPUP_CHIPCARD_GENNEW); - chipcardPopup->insertItem(QIconSet(icons.loadIcon("editdelete", KIcon::Small)), + chipcardPopup->insertItem(QIconSet(picons->loadIcon("editdelete", KIcon::Small)), i18n("&Erase key-card"), this, SLOT(eraseCard_slot()), 0, BUTTON_POPUP_CHIPCARD_DEL); - chipcardPopup->insertItem(QIconSet(icons.loadIcon("", KIcon::Small)), + chipcardPopup->insertItem(QIconSet(picons->loadIcon("", KIcon::Small)), i18n("Read card-&ID"), this, SLOT(readCardId_slot()), 0, BUTTON_POPUP_CHIPCARD_READID); chipcardPopup->insertSeparator(); - chipcardPopup->insertItem(QIconSet(icons.loadIcon("2rightarrow", KIcon::Small)), + chipcardPopup->insertItem(QIconSet(picons->loadIcon("2rightarrow", KIcon::Small)), i18n("&Make card backup-image"), this, SLOT(makeCardBackup_slot()), 0, BUTTON_POPUP_CHIPCARD_SAVEBACKUP); - chipcardPopup->insertItem(QIconSet(icons.loadIcon("2leftarrow", KIcon::Small)), + chipcardPopup->insertItem(QIconSet(picons->loadIcon("2leftarrow", KIcon::Small)), i18n("&Replay card backup-image"), this, SLOT(replayCardBackup_slot()), 0, @@ -280,17 +296,17 @@ void PwM::initMenubar() #endif // CONFIG_KEYCARD // "view" popup menu - viewPopup->insertItem(QIconSet(icons.loadIcon("find", KIcon::Small)), + viewPopup->insertItem(QIconSet(picons->loadIcon("find", KIcon::Small)), i18n("&Find"), this, SLOT(find_slot()), 0, BUTTON_POPUP_VIEW_FIND); viewPopup->insertSeparator(); - viewPopup->insertItem(QIconSet(icons.loadIcon("halfencrypted", KIcon::Small)), + viewPopup->insertItem(QIconSet(picons->loadIcon("halfencrypted", KIcon::Small)), i18n("&Lock all entries"), this, SLOT(lockWnd_slot()), 0, BUTTON_POPUP_VIEW_LOCK); - viewPopup->insertItem(QIconSet(icons.loadIcon("encrypted", KIcon::Small)), + viewPopup->insertItem(QIconSet(picons->loadIcon("encrypted", KIcon::Small)), i18n("&Deep-lock all entries"), this, SLOT(deepLockWnd_slot()), 0, BUTTON_POPUP_VIEW_DEEPLOCK); - viewPopup->insertItem(QIconSet(icons.loadIcon("decrypted", KIcon::Small)), + viewPopup->insertItem(QIconSet(picons->loadIcon("decrypted", KIcon::Small)), i18n("&Unlock all entries"), this, SLOT(unlockWnd_slot()), 0, @@ -298,5 +314,5 @@ void PwM::initMenubar() menuBar()->insertItem(i18n("&View"), viewPopup); // "options" popup menu - optionsPopup->insertItem(QIconSet(icons.loadIcon("configure", KIcon::Small)), + optionsPopup->insertItem(QIconSet(picons->loadIcon("configure", KIcon::Small)), i18n("&Configure..."), this, SLOT(config_slot()), @@ -306,55 +322,78 @@ void PwM::initMenubar() #ifndef PWM_EMBEDDED helpPopup = helpMenu(QString::null, false); - menuBar()->insertItem(i18n("&Help"), helpPopup); +#else + helpPopup = new KPopupMenu(this); + + + helpPopup->insertItem(i18n("&License"), this, + SLOT(showLicense_slot()), 0, + BUTTON_POPUP_HELP_LICENSE); + + helpPopup->insertItem(i18n("&Faq"), this, + SLOT(faq_slot()), 0, + BUTTON_POPUP_HELP_FAQ); + + helpPopup->insertItem(i18n("&About PwManager"), this, + SLOT(createAboutData_slot()), 0, + BUTTON_POPUP_HELP_ABOUT); + #endif + menuBar()->insertItem(i18n("&Help"), helpPopup); + } void PwM::initToolbar() { + KIconLoader* picons; +#ifndef PWM_EMBEDDED KIconLoader icons; + picons = &icons; +#else + picons = KGlobal::iconLoader(); +#endif - toolBar()->insertButton(icons.loadIcon("filenew", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("filenew", KIcon::Toolbar), BUTTON_TOOL_NEW, SIGNAL(clicked(int)), this, SLOT(new_slot()), true, i18n("New")); - toolBar()->insertButton(icons.loadIcon("fileopen", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("fileopen", KIcon::Toolbar), BUTTON_TOOL_OPEN, SIGNAL(clicked(int)), this, SLOT(open_slot()), true, i18n("Open")); toolBar()->insertSeparator(); - toolBar()->insertButton(icons.loadIcon("filesave", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("filesave", KIcon::Toolbar), BUTTON_TOOL_SAVE, SIGNAL(clicked(int)), this, SLOT(save_slot()), true, i18n("Save")); - toolBar()->insertButton(icons.loadIcon("filesaveas", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("filesaveas", KIcon::Toolbar), BUTTON_TOOL_SAVEAS, SIGNAL(clicked(int)), this, SLOT(saveAs_slot()), true, i18n("Save as")); - toolBar()->insertButton(icons.loadIcon("fileprint", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("fileprint", KIcon::Toolbar), BUTTON_TOOL_PRINT, SIGNAL(clicked(int)), this, SLOT(print_slot()), true, i18n("Print...")); toolBar()->insertSeparator(); - toolBar()->insertButton(icons.loadIcon("pencil", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("pencil", KIcon::Toolbar), BUTTON_TOOL_ADD, SIGNAL(clicked(int)), this, SLOT(addPwd_slot()), true, i18n("Add password")); - toolBar()->insertButton(icons.loadIcon("edit", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("edit", KIcon::Toolbar), BUTTON_TOOL_EDIT, SIGNAL(clicked(int)), this, SLOT(editPwd_slot()), true, i18n("Edit password")); - toolBar()->insertButton(icons.loadIcon("editdelete", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("editdelete", KIcon::Toolbar), BUTTON_TOOL_DEL, SIGNAL(clicked(int)), this, SLOT(deletePwd_slot()), true, i18n("Delete password")); toolBar()->insertSeparator(); - toolBar()->insertButton(icons.loadIcon("find", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("find", KIcon::Toolbar), BUTTON_TOOL_FIND, SIGNAL(clicked(int)), this, SLOT(find_slot()), true, i18n("Find entry")); toolBar()->insertSeparator(); - toolBar()->insertButton(icons.loadIcon("halfencrypted", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("halfencrypted", KIcon::Toolbar), BUTTON_TOOL_LOCK, SIGNAL(clicked(int)), this, SLOT(lockWnd_slot()), true, i18n("Lock all entries")); - toolBar()->insertButton(icons.loadIcon("encrypted", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("encrypted", KIcon::Toolbar), BUTTON_TOOL_DEEPLOCK, SIGNAL(clicked(int)), this, SLOT(deepLockWnd_slot()), true, i18n("Deep-Lock all entries")); - toolBar()->insertButton(icons.loadIcon("decrypted", KIcon::Toolbar), + toolBar()->insertButton(picons->loadIcon("decrypted", KIcon::Toolbar), BUTTON_TOOL_UNLOCK, SIGNAL(clicked(int)), this, SLOT(unlockWnd_slot()), true, @@ -537,5 +576,6 @@ void PwM::addPwd_slot(QString *pw, PwMDoc *_doc) tryAgain: - if (w.exec() == 1) { + if (w.exec() == 1) + { PwMDataItem d; d.desc = w.getDescription().latin1(); @@ -1188,4 +1228,55 @@ void PwM::focusInEvent(QFocusEvent *e) } + +#ifdef PWM_EMBEDDED + +void PwM::showLicense_slot() +{ + KApplication::showLicence(); +} + +void PwM::faq_slot() +{ + KApplication::showFile( "PWM/Pi FAQ", "kdepim/pwmanager/pwmanagerFAQ.txt" ); +} + +void PwM::createAboutData_slot() +{ + QString version; +#include <../version> + QMessageBox::about( this, "About PwManager/Pi", + "PwManager/Platform-independent\n" + "(PWM/Pi) " +version + " - " + +#ifdef DESKTOP_VERSION + "Desktop Edition\n" +#else + "PDA-Edition\n" + "for: Zaurus 5500 / 7x0 / 8x0\n" +#endif + + "(c) 2004 Ulf Schenk\n" + "(c) 2004 Lutz Rogowski\n" + "(c) 1997-2003, The KDE PIM Team\n" + + "Michael Buesch - main programming and current maintainer\nmbuesch@freenet.de\n" + "Matt Scifo - original implementaion of \n" + "\"categories\" and the password-tree \n" + "in the system-tray. Original implementations of \n" + "numerous view-improvements.\n" + "mscifo@o1.com\n" + "Elias Probst - Gentoo ebuild maintainer.\nelias.probst@gmx.de\n" + "George Staikos - KWallet\nstaikos@kde.org\n" + "Matthew Palmer - rc2 code\nmjp16@uow.edu.au\n" + "Olivier Sessink - gpasman\ngpasman@nl.linux.org\n" + "The libgcrypt developers - Blowfish and SHA1 algorithms\nftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/\n" + "Troy Engel - kpasman\n tengel@sonic.net\n" + "Wickey - graphics-design in older versions\nwickey@gmx.at\n" + "Ian MacGregor - original documentation author.\n" + ); +} + +#endif + + #ifndef PWM_EMBEDDED #include "pwm.moc" diff --git a/pwmanager/pwmanager/pwm.h b/pwmanager/pwmanager/pwm.h index 3a79e67..36a8b5b 100644 --- a/pwmanager/pwmanager/pwm.h +++ b/pwmanager/pwmanager/pwm.h @@ -167,4 +167,10 @@ public slots: void replayCardBackup_slot(); +#ifdef PWM_EMBEDDED + void showLicense_slot(); + void faq_slot(); + void createAboutData_slot(); +#endif + protected: /** is this window virgin? */ diff --git a/pwmanager/pwmanager/pwmdocui.cpp b/pwmanager/pwmanager/pwmdocui.cpp index 66a1b59..b308b40 100644 --- a/pwmanager/pwmanager/pwmdocui.cpp +++ b/pwmanager/pwmanager/pwmdocui.cpp @@ -36,4 +36,5 @@ #include <kwin.h> #else +#include <qdir.h> #endif @@ -296,7 +297,15 @@ bool PwMDocUi::saveAsDocUi(PwMDoc *doc) return true; } +#ifndef PWM_EMBEDDED QString fn(KFileDialog::getSaveFileName(QString::null, i18n("*.pwm|PwManager Password file"), currentView)); +#else + QString fn = locateLocal( "data", KGlobal::getAppName() + "/*.pwm" ); + fn = KFileDialog::getSaveFileName(fn, + i18n("password filename(*.pwm)"), + currentView); + +#endif if (fn == "") { doc->timer()->putLock(DocTimer::id_autoLockTimer); @@ -325,7 +334,15 @@ bool PwMDocUi::openDocUi(PwMDoc *doc, { if (filename.isEmpty()) + { +#ifndef PWM_EMBEDDED filename = KFileDialog::getOpenFileName(QString::null, i18n("*.pwm|PwManager Password file\n" "*|All files"), getCurrentView()); +#else + filename = locateLocal( "data", KGlobal::getAppName() + "/*.pwm"); + filename = KFileDialog::getOpenFileName(filename, + i18n("password filename(*.pwm)"), getCurrentView()); +#endif + } if (filename.isEmpty()) goto cancelOpen; |