summaryrefslogtreecommitdiffabout
path: root/pwmanager
Unidiff
Diffstat (limited to 'pwmanager') (more/less context) (ignore whitespace changes)
-rw-r--r--pwmanager/pwmanager/pwm.cpp6
-rw-r--r--pwmanager/pwmanager/pwm.h3
-rw-r--r--pwmanager/pwmanager/pwmdoc.cpp5
-rw-r--r--pwmanager/pwmanager/pwmdoc.h1
4 files changed, 13 insertions, 2 deletions
diff --git a/pwmanager/pwmanager/pwm.cpp b/pwmanager/pwmanager/pwm.cpp
index 2b8f2fa..6ae6e28 100644
--- a/pwmanager/pwmanager/pwm.cpp
+++ b/pwmanager/pwmanager/pwm.cpp
@@ -1419,54 +1419,60 @@ void PwM::createAboutData_slot()
1419; 1419;
1420 QMessageBox::about( this, "About PwManager/Pi", 1420 QMessageBox::about( this, "About PwManager/Pi",
1421 "PwManager/Platform-independent\n" 1421 "PwManager/Platform-independent\n"
1422 "(PWM/Pi) " +version + " - " + 1422 "(PWM/Pi) " +version + " - " +
1423#ifdef DESKTOP_VERSION 1423#ifdef DESKTOP_VERSION
1424 "Desktop Edition\n" 1424 "Desktop Edition\n"
1425#else 1425#else
1426 "PDA-Edition\n" 1426 "PDA-Edition\n"
1427 "for: Zaurus 5500 / 7x0 / 8x0\n" 1427 "for: Zaurus 5500 / 7x0 / 8x0\n"
1428#endif 1428#endif
1429 1429
1430 "(c) 2004 Ulf Schenk\n" 1430 "(c) 2004 Ulf Schenk\n"
1431 "(c) 2004 Lutz Rogowski\n" 1431 "(c) 2004 Lutz Rogowski\n"
1432 "(c) 1997-2004, The KDE PIM Team\n" 1432 "(c) 1997-2004, The KDE PIM Team\n"
1433 1433
1434 "(c) Michael Buesch - main programming\nand current maintainer\nmbuesch@freenet.de\n" 1434 "(c) Michael Buesch - main programming\nand current maintainer\nmbuesch@freenet.de\n"
1435 "Matt Scifo - mscifo@o1.com\n" 1435 "Matt Scifo - mscifo@o1.com\n"
1436 "Elias Probst - elias.probst@gmx.de\n" 1436 "Elias Probst - elias.probst@gmx.de\n"
1437 "George Staikos - staikos@kde.org\n" 1437 "George Staikos - staikos@kde.org\n"
1438 "Matthew Palmer - mjp16@uow.edu.au\n" 1438 "Matthew Palmer - mjp16@uow.edu.au\n"
1439 "Olivier Sessink - gpasman@nl.linux.org\n" 1439 "Olivier Sessink - gpasman@nl.linux.org\n"
1440 "The libgcrypt developers -\nBlowfish and SHA1 algorithms\nftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/\n" 1440 "The libgcrypt developers -\nBlowfish and SHA1 algorithms\nftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/\n"
1441 "Troy Engel - tengel@sonic.net\n" 1441 "Troy Engel - tengel@sonic.net\n"
1442 "Wickey - wickey@gmx.at\n" 1442 "Wickey - wickey@gmx.at\n"
1443 "Ian MacGregor - original documentation author.\n" 1443 "Ian MacGregor - original documentation author.\n"
1444 ); 1444 );
1445} 1445}
1446 1446
1447 1447
1448//this are the overwritten callbackmethods from the syncinterface 1448//this are the overwritten callbackmethods from the syncinterface
1449bool PwM::sync(KSyncManager* manager, QString filename, int mode) 1449bool PwM::sync(KSyncManager* manager, QString filename, int mode)
1450{ 1450{
1451 PWM_ASSERT(curDoc()); 1451 PWM_ASSERT(curDoc());
1452 1452
1453 bool ret = curDoc()->sync(manager, filename, mode); 1453 bool ret = curDoc()->sync(manager, filename, mode);
1454 1454
1455 qDebug("PwM::sync save now: ret=%i", ret); 1455 qDebug("PwM::sync save now: ret=%i", ret);
1456 1456
1457 if (ret == true) { 1457 if (ret == true) {
1458 //US BUG: what can we call here to update the view of the current doc? 1458 //US BUG: what can we call here to update the view of the current doc?
1459 //mViewManager->refreshView(); 1459 //mViewManager->refreshView();
1460 1460
1461 //US curDoc()->sync sets the dirtyFlag in case the sync was successfull. 1461 //US curDoc()->sync sets the dirtyFlag in case the sync was successfull.
1462 save(); 1462 save();
1463 } 1463 }
1464 1464
1465 return ret; 1465 return ret;
1466} 1466}
1467
1468void PwM::removeSyncInfo( QString syncProfile)
1469{
1470 qDebug("PWM::not implemented: removeSyncInfo for profile %s ", syncProfile.latin1());
1471}
1472
1467#endif 1473#endif
1468 1474
1469 1475
1470#ifndef PWM_EMBEDDED 1476#ifndef PWM_EMBEDDED
1471#include "pwm.moc" 1477#include "pwm.moc"
1472#endif 1478#endif
diff --git a/pwmanager/pwmanager/pwm.h b/pwmanager/pwmanager/pwm.h
index 5822d59..fb34bca 100644
--- a/pwmanager/pwmanager/pwm.h
+++ b/pwmanager/pwmanager/pwm.h
@@ -232,66 +232,67 @@ protected slots:
232 232
233signals: 233signals:
234 /** window got closed (by user or someone else) */ 234 /** window got closed (by user or someone else) */
235 void closed(PwM *wnd); 235 void closed(PwM *wnd);
236 /** window got the focus (was brought to foreground) */ 236 /** window got the focus (was brought to foreground) */
237 void gotFocus(PwM *wnd); 237 void gotFocus(PwM *wnd);
238 /** window lost the focus */ 238 /** window lost the focus */
239 void lostFocus(PwM *wnd); 239 void lostFocus(PwM *wnd);
240 240
241protected: 241protected:
242 /** pointer to the view active in this KMainWindow */ 242 /** pointer to the view active in this KMainWindow */
243 PwMView *view; 243 PwMView *view;
244 /** pointer to the init class */ 244 /** pointer to the init class */
245 PwMInit *init; 245 PwMInit *init;
246 /** has this window already lost its virginity? 246 /** has this window already lost its virginity?
247 * Means is there an open working document 247 * Means is there an open working document
248 */ 248 */
249 bool virgin; 249 bool virgin;
250 /** "file" popup-menu */ 250 /** "file" popup-menu */
251 KPopupMenu *filePopup; 251 KPopupMenu *filePopup;
252 252
253 /** "manage" popup-menu */ 253 /** "manage" popup-menu */
254 KPopupMenu *managePopup; 254 KPopupMenu *managePopup;
255#ifdef CONFIG_KEYCARD 255#ifdef CONFIG_KEYCARD
256 /** "chipcard" popup-menu */ 256 /** "chipcard" popup-menu */
257 KPopupMenu *chipcardPopup; 257 KPopupMenu *chipcardPopup;
258#endif // CONFIG_KEYCARD 258#endif // CONFIG_KEYCARD
259 /** "view" popup-menu */ 259 /** "view" popup-menu */
260 KPopupMenu *viewPopup; 260 KPopupMenu *viewPopup;
261 /** "options" popup-menu */ 261 /** "options" popup-menu */
262 KPopupMenu *optionsPopup; 262 KPopupMenu *optionsPopup;
263 /** "help" popup-menu */ 263 /** "help" popup-menu */
264 KPopupMenu *helpPopup; 264 KPopupMenu *helpPopup;
265 /** "export" popup-menu */ 265 /** "export" popup-menu */
266 KPopupMenu *exportPopup; 266 KPopupMenu *exportPopup;
267 /** "import" popup-menu */ 267 /** "import" popup-menu */
268 KPopupMenu *importPopup; 268 KPopupMenu *importPopup;
269 /** force quit this window? */ 269 /** force quit this window? */
270 bool forceQuit; 270 bool forceQuit;
271 /** force minimize this window to the tray */ 271 /** force minimize this window to the tray */
272 bool forceMinimizeToTray; 272 bool forceMinimizeToTray;
273 273
274 274
275 275
276 276
277 private: 277 private:
278#ifdef PWM_EMBEDDED 278#ifdef PWM_EMBEDDED
279 //this are the overwritten callbackmethods from the syncinterface 279 //this are the overwritten callbackmethods from the syncinterface
280 virtual bool sync(KSyncManager* manager, QString filename, int mode); 280 virtual bool sync(KSyncManager* manager, QString filename, int mode);
281 virtual void removeSyncInfo( QString syncProfile);
281 282
282 // LR ******************************* 283 // LR *******************************
283 // sync stuff! 284 // sync stuff!
284 QPopupMenu *syncPopup; 285 QPopupMenu *syncPopup;
285 KSyncManager* syncManager; 286 KSyncManager* syncManager;
286#endif 287#endif
287 288
288 289
289 290
290 291
291 292
292 293
293 294
294 295
295}; 296};
296 297
297#endif 298#endif
diff --git a/pwmanager/pwmanager/pwmdoc.cpp b/pwmanager/pwmanager/pwmdoc.cpp
index cf8690f..fd17ce5 100644
--- a/pwmanager/pwmanager/pwmdoc.cpp
+++ b/pwmanager/pwmanager/pwmdoc.cpp
@@ -3259,97 +3259,100 @@ int PwMDoc::takePwMDataItem( PwMDataItem* local, PwMDataItem* remote, QDateTime
3259 case SYNC_PREF_LOCAL: 3259 case SYNC_PREF_LOCAL:
3260 if ( lastSync > remoteMod ) 3260 if ( lastSync > remoteMod )
3261 return 1; 3261 return 1;
3262 if ( lastSync > localMod ) 3262 if ( lastSync > localMod )
3263 return 2; 3263 return 2;
3264 return 1; 3264 return 1;
3265 break; 3265 break;
3266 case SYNC_PREF_REMOTE: 3266 case SYNC_PREF_REMOTE:
3267 if ( lastSync > remoteMod ) 3267 if ( lastSync > remoteMod )
3268 return 1; 3268 return 1;
3269 if ( lastSync > localMod ) 3269 if ( lastSync > localMod )
3270 return 2; 3270 return 2;
3271 return 2; 3271 return 2;
3272 break; 3272 break;
3273 case SYNC_PREF_NEWEST: 3273 case SYNC_PREF_NEWEST:
3274 if ( localMod > remoteMod ) 3274 if ( localMod > remoteMod )
3275 return 1; 3275 return 1;
3276 else 3276 else
3277 return 2; 3277 return 2;
3278 break; 3278 break;
3279 case SYNC_PREF_ASK: 3279 case SYNC_PREF_ASK:
3280 //qDebug("lsy %s --- lo %s --- re %s ", lastSync.toString().latin1(), localMod.toString().latin1(), remoteMod.toString().latin1() ); 3280 //qDebug("lsy %s --- lo %s --- re %s ", lastSync.toString().latin1(), localMod.toString().latin1(), remoteMod.toString().latin1() );
3281 if ( lastSync > remoteMod ) 3281 if ( lastSync > remoteMod )
3282 return 1; 3282 return 1;
3283 if ( lastSync > localMod ) 3283 if ( lastSync > localMod )
3284 return 2; 3284 return 2;
3285 localIsNew = localMod >= remoteMod; 3285 localIsNew = localMod >= remoteMod;
3286 //qDebug("conflict! ************************************** "); 3286 //qDebug("conflict! ************************************** ");
3287 { 3287 {
3288 PwMDataItemChooser acd ( *local,*remote, localIsNew , 0/*this*/ ); 3288 PwMDataItemChooser acd ( *local,*remote, localIsNew , 0/*this*/ );
3289 result = acd.executeD(localIsNew); 3289 result = acd.executeD(localIsNew);
3290 return result; 3290 return result;
3291 } 3291 }
3292 break; 3292 break;
3293 case SYNC_PREF_FORCE_LOCAL: 3293 case SYNC_PREF_FORCE_LOCAL:
3294 return 1; 3294 return 1;
3295 break; 3295 break;
3296 case SYNC_PREF_FORCE_REMOTE: 3296 case SYNC_PREF_FORCE_REMOTE:
3297 return 2; 3297 return 2;
3298 break; 3298 break;
3299 3299
3300 default: 3300 default:
3301 // SYNC_PREF_TAKE_BOTH not implemented 3301 // SYNC_PREF_TAKE_BOTH not implemented
3302 break; 3302 break;
3303 } 3303 }
3304 return 0; 3304 return 0;
3305} 3305}
3306 3306
3307 3307void PwMDoc::removeSyncInfo( QString syncProfile)
3308{
3309 qDebug("PwMDoc::not implemented: removeSyncInfo for profile %s ", syncProfile.latin1());
3310}
3308 3311
3309 3312
3310//this are the overwritten callbackmethods from the syncinterface 3313//this are the overwritten callbackmethods from the syncinterface
3311bool PwMDoc::sync(KSyncManager* manager, QString filename, int mode) 3314bool PwMDoc::sync(KSyncManager* manager, QString filename, int mode)
3312{ 3315{
3313 QString mCurrentSyncDevice = manager->getCurrentSyncDevice(); 3316 QString mCurrentSyncDevice = manager->getCurrentSyncDevice();
3314 3317
3315 //1) unlock local file first if necessary (ask for password) 3318 //1) unlock local file first if necessary (ask for password)
3316 if (this->isDeepLocked()) { 3319 if (this->isDeepLocked()) {
3317 PwMerror ret = this->deepLock(false); 3320 PwMerror ret = this->deepLock(false);
3318 if (ret != e_success) 3321 if (ret != e_success)
3319 return false; 3322 return false;
3320 } 3323 }
3321 3324
3322 //2) construct and open a new doc on the stack(automatic cleanup of remote file). 3325 //2) construct and open a new doc on the stack(automatic cleanup of remote file).
3323 PwMDoc syncTarget(this, "synctarget"); 3326 PwMDoc syncTarget(this, "synctarget");
3324 PwMDoc* pSyncTarget = &syncTarget; 3327 PwMDoc* pSyncTarget = &syncTarget;
3325 3328
3326 3329
3327 PwMerror err = pSyncTarget->openDoc(&filename, 1 /*== open with all entries locked*/); 3330 PwMerror err = pSyncTarget->openDoc(&filename, 1 /*== open with all entries locked*/);
3328 3331
3329 if (err == e_alreadyOpen) { 3332 if (err == e_alreadyOpen) {
3330 PwMDocList::listItem li; 3333 PwMDocList::listItem li;
3331 if (getOpenDocList()->find(filename.latin1(), &li)) 3334 if (getOpenDocList()->find(filename.latin1(), &li))
3332 pSyncTarget = li.doc; 3335 pSyncTarget = li.doc;
3333 else { 3336 else {
3334 qDebug("PwmDoc::sync: sync failed. Error %i while opening file %s",err, filename.latin1()); 3337 qDebug("PwmDoc::sync: sync failed. Error %i while opening file %s",err, filename.latin1());
3335 return false; 3338 return false;
3336 } 3339 }
3337 } 3340 }
3338 else if (err != e_success) { 3341 else if (err != e_success) {
3339 qDebug("PwmDoc::sync: sync failed. Error %i while opening file %s",err, filename.latin1()); 3342 qDebug("PwmDoc::sync: sync failed. Error %i while opening file %s",err, filename.latin1());
3340 return false; 3343 return false;
3341 } 3344 }
3342 3345
3343 qDebug("PWM file loaded %s,sync mode %d",filename.latin1(), mode ); 3346 qDebug("PWM file loaded %s,sync mode %d",filename.latin1(), mode );
3344 3347
3345 3348
3346 //3) unlock remote file first if necessary (ask for password) 3349 //3) unlock remote file first if necessary (ask for password)
3347 if (pSyncTarget->isDeepLocked()) { 3350 if (pSyncTarget->isDeepLocked()) {
3348 PwMerror ret = pSyncTarget->deepLock(false); 3351 PwMerror ret = pSyncTarget->deepLock(false);
3349 if (ret != e_success) 3352 if (ret != e_success)
3350 return false; 3353 return false;
3351 } 3354 }
3352 3355
3353 3356
3354 err = syncronize(manager, this, pSyncTarget, mode ); 3357 err = syncronize(manager, this, pSyncTarget, mode );
3355 3358
diff --git a/pwmanager/pwmanager/pwmdoc.h b/pwmanager/pwmanager/pwmdoc.h
index 55e3231..e419c24 100644
--- a/pwmanager/pwmanager/pwmdoc.h
+++ b/pwmanager/pwmanager/pwmdoc.h
@@ -717,72 +717,73 @@ protected:
717 /** internal import function for a text-file generated by PwM. 717 /** internal import function for a text-file generated by PwM.
718 * If this is not a valid PwM-exported file, it returns e_fileFormat */ 718 * If this is not a valid PwM-exported file, it returns e_fileFormat */
719 PwMerror importText_PwM(const QString *file); 719 PwMerror importText_PwM(const QString *file);
720 /** PwM-text-import helper function to extract the name/pw/comment out 720 /** PwM-text-import helper function to extract the name/pw/comment out
721 * of one entry-line */ 721 * of one entry-line */
722 bool textExtractEntry_PwM(const char *in, ssize_t in_size, string *out); 722 bool textExtractEntry_PwM(const char *in, ssize_t in_size, string *out);
723 /** compare two strings */ 723 /** compare two strings */
724 bool compareString(const string &s1, const string &s2, bool caseSensitive, 724 bool compareString(const string &s1, const string &s2, bool caseSensitive,
725 bool exactWordMatch); 725 bool exactWordMatch);
726 /** clears all document-data */ 726 /** clears all document-data */
727 void clearDoc(); 727 void clearDoc();
728 /** delete all empty categories */ 728 /** delete all empty categories */
729 void delAllEmptyCat(bool dontFlagDirty); 729 void delAllEmptyCat(bool dontFlagDirty);
730 /** set a document status flag */ 730 /** set a document status flag */
731 void setDocStatFlag(unsigned int statFlag) 731 void setDocStatFlag(unsigned int statFlag)
732 { curDocStat |= statFlag; } 732 { curDocStat |= statFlag; }
733 /** unset a document status flag */ 733 /** unset a document status flag */
734 void unsetDocStatFlag(unsigned int statFlag) 734 void unsetDocStatFlag(unsigned int statFlag)
735 { curDocStat &= ~statFlag; } 735 { curDocStat &= ~statFlag; }
736 /** get a document status flag */ 736 /** get a document status flag */
737 bool getDocStatFlag(unsigned int statFlag) const 737 bool getDocStatFlag(unsigned int statFlag) const
738 { return (curDocStat & statFlag); } 738 { return (curDocStat & statFlag); }
739 /** set the "currentPassword" */ 739 /** set the "currentPassword" */
740 void setCurrentPw(const QString &pw) 740 void setCurrentPw(const QString &pw)
741 { 741 {
742 currentPw = pw; 742 currentPw = pw;
743 setDocStatFlag(DOC_STAT_DISK_DIRTY); 743 setDocStatFlag(DOC_STAT_DISK_DIRTY);
744 } 744 }
745 /** make a backup-copy of the given file */ 745 /** make a backup-copy of the given file */
746 bool backupFile(const QString &filePath); 746 bool backupFile(const QString &filePath);
747 /** copy a file from src to dst */ 747 /** copy a file from src to dst */
748 bool copyFile(const QString &src, const QString &dst); 748 bool copyFile(const QString &src, const QString &dst);
749 749
750 750
751 public: 751 public:
752#ifdef PWM_EMBEDDED 752#ifdef PWM_EMBEDDED
753 //US ENH: this is the magic function that syncronizes the local doc with the remote doc. 753 //US ENH: this is the magic function that syncronizes the local doc with the remote doc.
754 PwMerror syncronize(KSyncManager* manager, PwMDoc* syncLocal, PwMDoc* syncRemote, int mode ); 754 PwMerror syncronize(KSyncManager* manager, PwMDoc* syncLocal, PwMDoc* syncRemote, int mode );
755 755
756 //takePwMDataItem returns the following values 756 //takePwMDataItem returns the following values
757 // 0 equal 757 // 0 equal
758 // 1 take local 758 // 1 take local
759 // 2 take remote 759 // 2 take remote
760 // 3 cancel 760 // 3 cancel
761 int takePwMDataItem( PwMDataItem* local, PwMDataItem* remote, QDateTime lastSync, int mode , bool full ); 761 int takePwMDataItem( PwMDataItem* local, PwMDataItem* remote, QDateTime lastSync, int mode , bool full );
762 762
763 //the following methods are the overwritten callbackmethods from the syncinterface 763 //the following methods are the overwritten callbackmethods from the syncinterface
764 virtual bool sync(KSyncManager* manager, QString filename, int mode); 764 virtual bool sync(KSyncManager* manager, QString filename, int mode);
765 virtual void removeSyncInfo( QString syncProfile);
765 766
766#endif 767#endif
767 private: 768 private:
768 //US ENH: helpermethods to access the sync data for a certain syncname. 769 //US ENH: helpermethods to access the sync data for a certain syncname.
769 // It returns the syncdatas index 770 // It returns the syncdatas index
770 bool findSyncData(const QString &syncname, unsigned int *index); 771 bool findSyncData(const QString &syncname, unsigned int *index);
771 772
772 /** add new syncdataentry */ 773 /** add new syncdataentry */
773 PwMerror addSyncDataEntry(PwMSyncItem *d, bool dontFlagDirty = false); 774 PwMerror addSyncDataEntry(PwMSyncItem *d, bool dontFlagDirty = false);
774 775
775 /** returns a pointer to the syncdata */ 776 /** returns a pointer to the syncdata */
776 PwMSyncItem* getSyncDataEntry(unsigned int index) 777 PwMSyncItem* getSyncDataEntry(unsigned int index)
777 { return &(dti.syncDta[index]); } 778 { return &(dti.syncDta[index]); }
778 779
779 /** delete entry */ 780 /** delete entry */
780 bool delSyncDataEntry(unsigned int index, bool dontFlagDirty = false); 781 bool delSyncDataEntry(unsigned int index, bool dontFlagDirty = false);
781 782
782 PwMDataItem* findEntryByID(const QString &uid, unsigned int *category, unsigned int *index); 783 PwMDataItem* findEntryByID(const QString &uid, unsigned int *category, unsigned int *index);
783 784
784 QStringList getIDEntryList(); 785 QStringList getIDEntryList();
785 786
786}; 787};
787 788
788#endif 789#endif