Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 395 B After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 1.7 KiB |
@ -0,0 +1,76 @@ |
|||||||
|
#include <QMessageBox> |
||||||
|
#include <QFileDialog> |
||||||
|
|
||||||
|
#include "UBUpdateDlg.h" |
||||||
|
|
||||||
|
UBUpdateDlg::UBUpdateDlg(QWidget *parent, int nbFiles, const QString& bkpPath) |
||||||
|
: QDialog(parent) |
||||||
|
, mpDlgBttn(NULL) |
||||||
|
{ |
||||||
|
setFixedSize(400, 110); |
||||||
|
setModal(true); |
||||||
|
setWindowTitle(tr("Document updater")); |
||||||
|
setLayout(&mLayout); |
||||||
|
QString str = QString::number(nbFiles); |
||||||
|
str.append(tr(" files require an update.")); |
||||||
|
mNbFilesLabel.setText(str); |
||||||
|
mLayout.addWidget(&mNbFilesLabel); |
||||||
|
mBkpLabel.setText(tr("Backup path: ")); |
||||||
|
mBkpPath.setText(bkpPath); |
||||||
|
mBrowseBttn.setText(tr("Browse")); |
||||||
|
mHLayout.addWidget(&mBkpLabel); |
||||||
|
mHLayout.addWidget(&mBkpPath, 1); |
||||||
|
mHLayout.addWidget(&mBrowseBttn); |
||||||
|
mLayout.addLayout(&mHLayout); |
||||||
|
|
||||||
|
mpDlgBttn = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, Qt::Horizontal, this); |
||||||
|
mLayout.addWidget(mpDlgBttn); |
||||||
|
|
||||||
|
mpDlgBttn->button(QDialogButtonBox::Ok)->setText(tr("Update")); |
||||||
|
mpDlgBttn->button(QDialogButtonBox::Cancel)->setText("Remind me later"); |
||||||
|
|
||||||
|
QObject::connect(&mBrowseBttn, SIGNAL(clicked()), this, SLOT(onBrowse())); |
||||||
|
QObject::connect(mpDlgBttn, SIGNAL(accepted()), this, SLOT(onUpdate())); |
||||||
|
QObject::connect(mpDlgBttn, SIGNAL(rejected()), this, SLOT(reject())); |
||||||
|
} |
||||||
|
|
||||||
|
UBUpdateDlg::~UBUpdateDlg() |
||||||
|
{ |
||||||
|
if(NULL != mpDlgBttn) |
||||||
|
{ |
||||||
|
delete mpDlgBttn; |
||||||
|
mpDlgBttn = NULL; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
void UBUpdateDlg::onBrowse() |
||||||
|
{ |
||||||
|
QString qsSelectedDir; |
||||||
|
qsSelectedDir = QFileDialog::getExistingDirectory(this, tr("Select a backup folder"), mBkpPath.text()); |
||||||
|
mBkpPath.setText(qsSelectedDir); |
||||||
|
} |
||||||
|
|
||||||
|
void UBUpdateDlg::onUpdate() |
||||||
|
{ |
||||||
|
emit updateFiles(); |
||||||
|
} |
||||||
|
|
||||||
|
void UBUpdateDlg::onFilesUpdated(bool bResult) |
||||||
|
{ |
||||||
|
QString qsMsg; |
||||||
|
|
||||||
|
if(bResult) |
||||||
|
{ |
||||||
|
qsMsg = tr("Files update successful"); |
||||||
|
} |
||||||
|
else |
||||||
|
{ |
||||||
|
qsMsg = tr("An error occured during the update. The files have not been affected."); |
||||||
|
} |
||||||
|
QMessageBox::information(this, tr("Files update results"), qsMsg, QMessageBox::Ok); |
||||||
|
} |
||||||
|
|
||||||
|
QString UBUpdateDlg::backupPath() |
||||||
|
{ |
||||||
|
return mBkpPath.text(); |
||||||
|
} |
@ -0,0 +1,41 @@ |
|||||||
|
#ifndef UBUPDATEDLG_H |
||||||
|
#define UBUPDATEDLG_H |
||||||
|
|
||||||
|
#include <QDialog> |
||||||
|
#include <QLabel> |
||||||
|
#include <QPushButton> |
||||||
|
#include <QLineEdit> |
||||||
|
#include <QDialogButtonBox> |
||||||
|
#include <QVBoxLayout> |
||||||
|
#include <QHBoxLayout> |
||||||
|
|
||||||
|
class UBUpdateDlg : public QDialog |
||||||
|
{ |
||||||
|
Q_OBJECT |
||||||
|
|
||||||
|
public: |
||||||
|
UBUpdateDlg(QWidget *parent = 0, int nbFiles = 0, const QString& bkpPath = ""); |
||||||
|
~UBUpdateDlg(); |
||||||
|
QString backupPath(); |
||||||
|
|
||||||
|
public slots: |
||||||
|
void onFilesUpdated(bool bResult); |
||||||
|
|
||||||
|
signals: |
||||||
|
void updateFiles(); |
||||||
|
|
||||||
|
private slots: |
||||||
|
void onBrowse(); |
||||||
|
void onUpdate(); |
||||||
|
|
||||||
|
private: |
||||||
|
QLabel mNbFilesLabel; |
||||||
|
QLabel mBkpLabel; |
||||||
|
QLineEdit mBkpPath; |
||||||
|
QPushButton mBrowseBttn; |
||||||
|
QDialogButtonBox* mpDlgBttn; |
||||||
|
QVBoxLayout mLayout; |
||||||
|
QHBoxLayout mHLayout; |
||||||
|
}; |
||||||
|
|
||||||
|
#endif // UBUPDATEDLG_H
|