author | eilers <eilers> | 2003-02-06 10:45:32 (UTC) |
---|---|---|
committer | eilers <eilers> | 2003-02-06 10:45:32 (UTC) |
commit | d55ed582e988f3ceb5eb25d08139aef8e432e260 (patch) (side-by-side diff) | |
tree | e97ec0a1f7e00e781d34f22691dd2f94c39f57eb | |
parent | 51f39143a14b10b971670ad3a204af35be2564bb (diff) | |
download | opie-d55ed582e988f3ceb5eb25d08139aef8e432e260.zip opie-d55ed582e988f3ceb5eb25d08139aef8e432e260.tar.gz opie-d55ed582e988f3ceb5eb25d08139aef8e432e260.tar.bz2 |
Now we store the application subdirectories, too ! Otherwise this tool
does not help us anything !
-rw-r--r-- | noncore/settings/backup/backuprestore.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/noncore/settings/backup/backuprestore.cpp b/noncore/settings/backup/backuprestore.cpp index 457282a..81d7ed3 100644 --- a/noncore/settings/backup/backuprestore.cpp +++ b/noncore/settings/backup/backuprestore.cpp @@ -90,134 +90,134 @@ BackupAndRestore::BackupAndRestore( QWidget* parent, const char* name) QList<QListViewItem> list; getAllItems(backupList->firstChild(), list); for(uint i = 0; i < list.count(); i++){ QString text = list.at(i)->text(HEADER_NAME); for(uint i2 = 0; i2 < dontBackupList.count(); i2++){ if(*dontBackupList.at(i2) == text){ selectItem(list.at(i)); break; } } } } BackupAndRestore::~BackupAndRestore(){ QList<QListViewItem> list; getAllItems(backupList->firstChild(), list); Config config("BackupAndRestore"); config.setGroup("DontBackup"); config.clearGroup(); int count = 0; for(uint i = 0; i < list.count(); i++){ if(list.at(i)->text(HEADER_BACKUP) == ""){ config.writeEntry(QString("%1").arg(count), list.at(i)->text(HEADER_NAME)); count++; } } config.writeEntry("Total", count); } QList<QListViewItem> BackupAndRestore::getAllItems(QListViewItem *item, QList<QListViewItem> &list){ while(item){ if(item->childCount() > 0) getAllItems(item->firstChild(), list); list.append(item); item = item->nextSibling(); } return list; } /** * Selects and unselects the item by setting the HEADER_BACKUP to B or !. * and changing the icon to match * @param currentItem the item to swich the selection choice. */ void BackupAndRestore::selectItem(QListViewItem *currentItem){ if(!currentItem) return; if(currentItem->text(HEADER_BACKUP) == "B"){ currentItem->setPixmap(HEADER_NAME, Resource::loadPixmap("backup/null")); currentItem->setText(HEADER_BACKUP, ""); } else{ currentItem->setPixmap(HEADER_NAME, Resource::loadPixmap("backup/check")); currentItem->setText(HEADER_BACKUP, "B"); } } void BackupAndRestore::scanForApplicationSettings(){ QDir d(applicationSettings->text(BACKUP_LOCATION)); - d.setFilter( QDir::Files | QDir::NoSymLinks ); + d.setFilter( QDir::Dirs | QDir::Files | QDir::NoSymLinks ); const QFileInfoList *list = d.entryInfoList(); QFileInfoListIterator it( *list ); QFileInfo *fi; while ( (fi=it.current()) ) { - //qDebug((d.path()+fi->fileName()).latin1()); + // qDebug((d.path()+fi->fileName()).latin1()); QListViewItem *newItem = new QListViewItem(applicationSettings, fi->fileName()); selectItem(newItem); ++it; } } /** * The "Backup" button has been pressed. Get a list of all of the files that * should be backed up. If there are no files, emit and error and exit. * Determine the file name to store the backup in. Backup the file(s) using * tar and gzip --best. Report failure or success */ void BackupAndRestore::backupPressed(){ QString backupFiles; if(getBackupFiles(backupFiles, NULL) == 0){ QMessageBox::critical(this, "Message", "No items selected.",QString("Ok") ); return; } setCaption(tr("Backup and Restore... working...")); QString outputFile = backupLocations[storeToLocation->currentText()]; QDateTime time = QDateTime::currentDateTime(); QString dateString = time.date().toString().replace(QRegExp(" "), ""); outputFile += "/" + dateString; QString t = outputFile; int c = 1; while(QFile::exists(outputFile + EXTENSION)){ outputFile = t + QString("%1").arg(c); c++; } qDebug(QString("system(\"tar -c %1 | gzip > %2\")").arg(backupFiles).arg(outputFile).latin1()); outputFile += EXTENSION; int r = system( QString("tar -c %1 | gzip > %2").arg(backupFiles).arg(outputFile).latin1() ); if(r != 0){ perror("Error: "); QString errorMsg="Error\n"+(QString)strerror(errno); QMessageBox::critical(this, "Message", "Backup Failed.\n"+errorMsg, QString("Ok") ); return; } else{ QMessageBox::information(this, "Message", "Backup Successfull.",QString("Ok") ); } setCaption(tr("Backup and Restore")); } /*** * Get a list of all of the files to backup. */ int BackupAndRestore::getBackupFiles(QString &backupFiles, QListViewItem *parent){ QListViewItem * currentItem; QString currentHome; if(!parent) currentItem = backupList->firstChild(); else{ |