-rw-r--r-- | noncore/settings/backup/backuprestore.cpp | 31 |
1 files changed, 27 insertions, 4 deletions
diff --git a/noncore/settings/backup/backuprestore.cpp b/noncore/settings/backup/backuprestore.cpp index cfba907..477e24d 100644 --- a/noncore/settings/backup/backuprestore.cpp +++ b/noncore/settings/backup/backuprestore.cpp @@ -70,26 +70,38 @@ BackupAndRestore::BackupAndRestore( QWidget* parent, const char* name, WFlags f { backupLocations.insert("CF", "/mnt/cf"); } if (StorageInfo::hasSd() || StorageInfo::hasMmc()) { backupLocations.insert("SD", "/mnt/card"); } + Config config("BackupAndRestore"); + //read last locations + config.setGroup("LastLocation"); + QString lastStoreLocation = config.readEntry( "LastStoreLocation", "" ); + QString lastRestoreLocation = config.readEntry( "LastRestoreLocation", "" ); + int locationIndex = 0; + QMap<QString, QString>::Iterator it; for( it = backupLocations.begin(); it != backupLocations.end(); ++it ) { storeToLocation->insertItem(it.key()); restoreSource->insertItem(it.key()); + + //check for last locations + if ( it.key() == lastStoreLocation ) + storeToLocation->setCurrentItem( locationIndex ); + if ( it.key() == lastRestoreLocation ) + restoreSource->setCurrentItem( locationIndex ); + locationIndex++; } // Read the list of items to ignore. - Config config("BackupAndRestore"); - QList<QString> dontBackupList; dontBackupList.setAutoDelete(true); config.setGroup("DontBackup"); int total = config.readNumEntry("Total", 0); for(int i = 0; i < total; i++) { dontBackupList.append(new QString(config.readEntry(QString("%1").arg(i), ""))); } @@ -274,16 +286,22 @@ void BackupAndRestore::backup() setCaption(tr("Backup and Restore.. Failed !!")); return; } else { QMessageBox::information(this, tr( "Message" ), tr( "Backup Successfull." ), QString(tr( "Ok" ) ) ); } + + //write store-location + Config config( "BackupAndRestore" ); + config.setGroup( "LastLocation" ); + config.writeEntry( "LastStoreLocation", storeToLocation->currentText() ); + setCaption(tr("Backup and Restore")); } /*** * Get a list of all of the files to backup. */ int BackupAndRestore::getBackupFiles(QString &backupFiles, QListViewItem *parent) { @@ -433,16 +451,21 @@ void BackupAndRestore::restore() return; break; } } else { - QMessageBox::critical(this, tr( "Message" ), - tr( "Restore Successfull." ), QString( tr( "Ok") ) ); + QMessageBox::information(this, tr( "Message" ), tr( "Restore Successfull." ), QString( tr( "Ok") ) ); } + + //write restore-location + Config config( "BackupAndRestore" ); + config.setGroup( "LastLocation" ); + config.writeEntry( "LastRestoreLocation", restoreSource->currentText() ); + setCaption(tr("Backup and Restore")); } // backuprestore.cpp |