You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
keep/keep/app/forcebackupdialog.cpp

100 lines
2.9 KiB

/* This file is part of the Keep project
Copyright (C) 2005 Jean-Rémy Falleri <jr.falleri@laposte.net>
Keep is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
Keep is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Keep; if not, write to the
Free Software Foundation, Inc.,
51 Franklin Steet, Fifth Floor, Boston, MA 02110-1301, USA. */
#include "forcebackupdialog.h"
#include <klocale.h>
#include <qlayout.h>
#include <kurl.h>
#include <dcopref.h>
#include <kdebug.h>
#include <kactivelabel.h>
#include <kmimetype.h>
#include <qpixmap.h>
#include <kcombobox.h>
#include <klineedit.h>
#include <kprogress.h>
#include <qlabel.h>
#include <qgroupbox.h>
#include <qradiobutton.h>
#include <qcheckbox.h>
#include <kmessagebox.h>
#include <kapplication.h>
#include <kiconloader.h>
#include <qvaluelist.h>
#include <kmessagebox.h>
#include "backupconfig.h"
#include "backuplistviewitem.h"
ForceBackupDialog::ForceBackupDialog(QWidget *parent):KDialogBase(Plain, i18n("Backup now"),
Help|Cancel|Ok, Cancel, parent, "forceBackupDialog", true, false)
{
QGridLayout* toplayout = new QGridLayout(plainPage());
m_view = new ForceBackupDialogView(plainPage());
toplayout->addWidget(m_view,0,0);
loadBackupList();
m_manager = new RDBManager();
connect( m_manager, SIGNAL(backupError(Backup,QString)), this, SLOT(slotBackupError(Backup,QString)) );
connect( this, SIGNAL(okClicked()), this, SLOT(slotForceBackup()));
}
ForceBackupDialog::~ForceBackupDialog()
{
delete m_manager;
}
void ForceBackupDialog::loadBackupList()
{
BackupConfig backupConfig;
QValueList<Backup> backupList = backupConfig.backupList();
QValueList<Backup>::iterator it;
for ( it = backupList.begin(); it != backupList.end(); ++it )
{
new BackupListViewItem(m_view->m_lstBackup,*it);
}
}
void ForceBackupDialog::slotForceBackup()
{
QValueList<Backup> backupList;
QListViewItemIterator it( m_view->m_lstBackup );
while ( it.current() )
{
QListViewItem *item = it.current();
if ( item->isSelected() )
{
BackupListViewItem *backupItem = static_cast<BackupListViewItem*>(item);
backupList.append(backupItem->backup());
}
++it;
}
RDBManager *manager;
m_manager->slotForceBackup(backupList);
}
void ForceBackupDialog::slotBackupError(Backup backup,QString errorMessage)
{
KMessageBox::error(this,i18n("<p><b>An error occured making %1 backup:</b></p><p>%2</p>").arg(backup.source()).arg(errorMessage));
}
#include "forcebackupdialog.moc"