#ifndef BACKUPDIALOG_H #define BACKUPDIALOG_H #include #include "ConnectionConfig.h" #include class QStringList; class QLabel; class QPushButton; class QTabWidget; class QVBoxLayout; class QHBoxLayout; class QComboBox; class QSpinBox; class QCheckBox; class QPlainTextEdit; class QLineEdit; class QFormLayout; class BackupDialog : public QDialog { Q_OBJECT public: explicit BackupDialog(QWidget *parent = nullptr); ~BackupDialog(); void ConnectTo(QProcess *process); void disconnectCurrentProcess(); void setConfig(const ConnectionConfig &cfg); void retranslateUi(); private: QProcess *m_process = nullptr; ConnectionConfig m_config; QPushButton *btnStart; QTabWidget *tabWidget; QWidget *tab; QVBoxLayout *verticalLayout; QFormLayout *formLayout; QWidget *widget; QHBoxLayout *horizontalLayout; QLineEdit *editFilename; QPushButton *selectDestination; QComboBox *backupFormat; QSpinBox *jobs; QCheckBox *chkbxVerbose; QSpinBox *compression; QCheckBox *chkbxIncludeBlobs; QCheckBox *chkbxClean; QCheckBox *chkbxCreate; QCheckBox *noOwner; QCheckBox *oids; QComboBox *what; QCheckBox *noAcl; QWidget *tab_2; QVBoxLayout *verticalLayout_2; QPlainTextEdit *stdOutput; QLabel *label; QLabel *label_2; QLabel *label_3; QLabel *label_4; QLabel *label_5; void writeOutput(const QString &s); void setParams(QStringList &args); private slots: void on_process_readyRead(); void on_process_errorOccurred(QProcess::ProcessError error); void on_process_finished(int exitCode, QProcess::ExitStatus exitStatus); void on_btnStart_clicked(); void on_backupFormat_currentIndexChanged(int index); void on_selectDestination_clicked(); }; #endif // BACKUPDIALOG_H