]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/qt-console/restore/prerestore.cpp
Addressed issue of long compiles. Simplify with Pages::setCurrent
[bacula/bacula] / bacula / src / qt-console / restore / prerestore.cpp
index 2aefaeb98ff6897de3670d3ab4c137b4238fae08..b6cd0839a1d5352d8d0fa36df844aec4968cff83 100644 (file)
 #include "restore.h"
 
 
-prerestoreDialog::prerestoreDialog(Console *console)
+prerestorePage::prerestorePage(Console *console)
 {
-   m_console = console;               /* keep compiler quiet */
+   console->notify(false);
+   m_name = "Pre-Restore";
    setupUi(this);
+   QTreeWidgetItem *parent = mainWin->getFromHash(console);
+   if (!parent) {
+      /* ***FIXME*** */
+      printf("Error retrieving tree widget.");
+      return;
+   }
+   pgInitialize(parent);
+   m_closeable = true;
+
    jobCombo->addItems(console->job_list);
    filesetCombo->addItems(console->fileset_list);
    clientCombo->addItems(console->client_list);
    poolCombo->addItems(console->pool_list);
    storageCombo->addItems(console->storage_list);
+   //beforeDateTime->setDate(QDateTime::currentDateTime().toUTC().date());
+   beforeDateTime->setDateTime(QDateTime::currentDateTime());
+   beforeDateTime->setEnabled(false);
    job_name_change(0);
    connect(jobCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(job_name_change(int)));
+   connect(okButton, SIGNAL(pressed()), this, SLOT(okButtonPushed()));
+   connect(cancelButton, SIGNAL(pressed()), this, SLOT(cancelButtonPushed()));
 
+   dockPage();
+   setCurrent();
    this->show();
 }
 
-void prerestoreDialog::accept()
+void prerestorePage::okButtonPushed()
 {
    QString cmd;
 
@@ -68,22 +85,26 @@ void prerestoreDialog::accept()
              .arg(poolCombo->currentText())
              .arg(storageCombo->currentText());
 
+   /* ***FIXME*** */
+   printf("preRestore command \"%s\"\n", cmd.toUtf8().data());
    m_console->write(cmd);
    m_console->display_text(cmd);
-   new restoreDialog(m_console);
-   delete this;
+   /* Note, do not turn notifier back on here ... */
+   new restorePage(m_console);
+   closeStackPage();
 }
 
 
-void prerestoreDialog::reject()
+void prerestorePage::cancelButtonPushed()
 {
    mainWin->set_status("Canceled");
    this->hide();
-   delete this;
+   m_console->notify(true);
+   closeStackPage();
 }
 
 
-void prerestoreDialog::job_name_change(int index)
+void prerestorePage::job_name_change(int index)
 {
    job_defaults job_defs;