]> git.sur5r.net Git - bacula/bacula/commitdiff
Add BNET_RUN_CMD to bat
authorKern Sibbald <kern@sibbald.com>
Sun, 11 Mar 2007 12:51:30 +0000 (12:51 +0000)
committerKern Sibbald <kern@sibbald.com>
Sun, 11 Mar 2007 12:51:30 +0000 (12:51 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@4343 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/src/qt-console/Makefile
bacula/src/qt-console/console/console.cpp
bacula/src/qt-console/restore/restore.cpp
bacula/src/qt-console/run/run.h
bacula/src/qt-console/run/runcmd.cpp

index 299312c8a375649f7a220897c7d9f2b0d5e0362c..da4fd113c9c6930a65c35ae872aa739be6a8381a 100644 (file)
@@ -1,6 +1,6 @@
 #############################################################################
 # Makefile for building: bat
-# Generated by qmake (2.01a) (Qt 4.2.1) on: Sat Mar 10 21:24:05 2007
+# Generated by qmake (2.01a) (Qt 4.2.1) on: Sun Mar 11 11:56:33 2007
 # Project:  bat.pro
 # Template: app
 # Command: /usr/bin/qmake -unix -o Makefile bat.pro
index 1594171f418166a8c20ad819ee50f3ecdf5a3676..41810642204a02fe3f27cdc49e287b7dc17ba616 100644 (file)
@@ -50,8 +50,6 @@ Console::Console(QStackedWidget *parent)
    m_cursor = new QTextCursor(m_textEdit->document());
    mainWin->actionConnect->setIcon(QIcon(QString::fromUtf8("images/disconnected.png")));
 
-
-
    readSettings();
    /* Check for messages every 5 seconds */
 // m_timer = new QTimer(this);
index 872dc29b2912d6f7bb71c455e7d6eca51829171b..f02aa1cd2344e9192cb2d223edb643a688d0a2f5 100644 (file)
@@ -139,8 +139,8 @@ void restoreDialog::accept()
 {
    this->hide();
    m_console->write("done");
-   delete this;
    m_console->notify(true);
+   delete this;
    mainWin->resetFocus();
 }
 
@@ -241,7 +241,7 @@ bool restoreDialog::cwd(const char *dir)
    if ((stat = m_console->read()) > 0) {
       m_cwd = m_console->msg();
       lineEdit->insert(m_cwd);
-      Dmsg2(000, "cwd=%s msg=%s\n", m_cwd.toUtf8().data(), m_console->msg());
+      Dmsg2(100, "cwd=%s msg=%s\n", m_cwd.toUtf8().data(), m_console->msg());
    } else {
       Dmsg1(000, "stat=%d\n", stat);
       QMessageBox::critical(this, "Error", "cd command failed", QMessageBox::Ok);
index 14d2bbd9a6186df26b736070c847dc5bfeb47a14..5628331992cb20eb5205c0239b5e0c7380db18d6 100644 (file)
@@ -4,6 +4,7 @@
 
 #include <QtGui>
 #include "ui_run.h"
+#include "ui_runcmd.h"
 #include "console.h"
 
 class runDialog : public QDialog, public Ui::runForm
@@ -23,7 +24,7 @@ private:
 
 };
 
-class runCmdDialog : public QDialog, public Ui::runForm
+class runCmdDialog : public QDialog, public Ui::runCmdForm
 {
    Q_OBJECT 
 
@@ -35,8 +36,9 @@ public slots:
    void reject();
 
 private:
-   Console *m_console;
+   void fillRunDialog();
 
+   Console *m_console;
 };
 
 
index ab63a7e24012f56b2bd3d31fd776448f93c91cf6..b038b2a15e8e173054327c29e69f76db9771fa56 100644 (file)
  */
 runCmdDialog::runCmdDialog(Console *console)
 {
-   QDateTime dt;
-
    m_console = console;
    m_console->notify(false);
    setupUi(this);
+   fillRunDialog();
    this->show();
+   m_console->discardToPrompt();
+}
+
+void runCmdDialog::fillRunDialog()
+{
+   QString item, val;
+   QStringList items;
+   QRegExp rx("^.*:\\s*(\\S.*$)");
+
+   m_console->read();
+   item = m_console->msg();
+   items = item.split("\n");
+   label->setText(items[0]);
+   Dmsg1(000, "Title=%s\n", items[0].toUtf8().data());
+   items.removeFirst();               /* remove title */
+   foreach(item, items) {
+      rx.indexIn(item);
+      val = rx.cap(1);
+      Dmsg1(000, "Item=%s\n", item.toUtf8().data());
+      Dmsg1(000, "Value=%s\n", val.toUtf8().data());
+
+      if (item.startsWith("JobName:")) {
+         jobCombo->addItem(val);
+         continue;
+      }
+      if (item.startsWith("Bootstrap:")) {
+         bootstrap->setText(val);
+         continue;
+      }
+      if (item.startsWith("Client:")) {
+         clientCombo->addItem(val);
+         continue;
+      }
+      if (item.startsWith("Storage:")) {
+         storageCombo->addItem(val);
+         continue;
+      }
+      if (item.startsWith("Where:")) {
+         where->setText(val);
+         continue;
+      }
+      if (item.startsWith("When:")) {
+         continue;
+      }
+      if (item.startsWith("Catalog:")) {
+         catalogCombo->addItem(val);
+         continue;
+      }
+      if (item.startsWith("Fileset:")) {
+         filesetCombo->addItem(val);
+         continue;
+      }
+      if (item.startsWith("Priority:")) {
+//       prioritySpin->setValue(atoi(val));
+         continue;
+      }
+   }
 }
 
 void runCmdDialog::accept()