summaryrefslogtreecommitdiff
path: root/noncore
Side-by-side diff
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/backup/backuprestore.cpp31
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
@@ -72,22 +72,34 @@ BackupAndRestore::BackupAndRestore( QWidget* parent, const char* name, WFlags f
}
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++)
{
@@ -276,12 +288,18 @@ void BackupAndRestore::backup()
}
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.
*/
@@ -435,14 +453,19 @@ void BackupAndRestore::restore()
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