]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/qt-console/mainwin.h
Fix bat seg fault
[bacula/bacula] / bacula / src / qt-console / mainwin.h
index b79ff405d727a56bfc6ae76e98f528a9c30d45d9..4a25d7e5aec9401c1a4730fdb8531703a6e22341 100644 (file)
@@ -1,26 +1,26 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2007-2007 Free Software Foundation Europe e.V.
+   Copyright (C) 2007-2009 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
    This program is Free Software; you can redistribute it and/or
-   modify it under the terms of version two of the GNU General Public
-   License as published by the Free Software Foundation plus additions
-   that are listed in the file LICENSE.
+   modify it under the terms of version three of the GNU Affero General Public
+   License as published by the Free Software Foundation and included
+   in the file LICENSE.
 
    This program 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
+   You should have received a copy of the GNU Affero General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   Bacula® is a registered trademark of John Walker.
+   Bacula® is a registered trademark of Kern Sibbald.
    The licensor of Bacula is the Free Software Foundation Europe
    (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
    Switzerland, email:ftf@fsfeurope.org.
@@ -52,12 +52,15 @@ public:
    void set_statusf(const char *fmt, ...);
    void set_status_ready();
    void set_status(const char *buf);
+   void set_status(const QString &str);
    void writeSettings();
    void readSettings();
    void resetFocus() { lineEdit->setFocus(); };
    void hashInsert(QTreeWidgetItem *, Pages *);
    void hashRemove(Pages *);
    void hashRemove(QTreeWidgetItem *, Pages *);
+   void setMessageIcon();
+   bool getWaitState() {return m_waitState; };
    Console *currentConsole();
    QTreeWidgetItem *currentTopItem();
    Pages* getFromHash(QTreeWidgetItem *);
@@ -68,10 +71,12 @@ public:
    QHash<Pages*,QTreeWidgetItem*> m_widgethash;
    /* This is a list of consoles */
    QHash<QTreeWidgetItem*,Console*> m_consoleHash;
-   void createPageJobList(QString &, QString &, QTreeWidgetItem *);
+   void createPageJobList(const QString &, const QString &,
+            const QString &, const QString &, QTreeWidgetItem *);
    QString m_dtformat;
    /* Begin Preferences variables */
    bool m_commDebug;
+   bool m_connDebug;
    bool m_displayAll;
    bool m_sqlDebug;
    bool m_commandDebug;
@@ -83,6 +88,21 @@ public:
    bool m_checkMessages;
    int m_checkMessagesInterval;
    bool m_longList;
+   bool m_rtPopDirDebug;
+   bool m_rtDirCurICDebug;
+   bool m_rtDirICDebug;
+   bool m_rtFileTabICDebug;
+   bool m_rtVerTabICDebug;
+   bool m_rtUpdateFTDebug;
+   bool m_rtUpdateVTDebug;
+   bool m_rtChecksDebug;
+   bool m_rtIconStateDebug;
+   bool m_rtRestore1Debug;
+   bool m_rtRestore2Debug;
+   bool m_rtRestore3Debug;
+   bool m_openBrowser;
+   bool m_openPlot;
+   bool m_openDirStat;
 
 public slots:
    void input_line();
@@ -92,6 +112,9 @@ public slots:
    void labelButtonClicked();
    void runButtonClicked();
    void estimateButtonClicked();
+   void browseButtonClicked();
+   void statusPageButtonClicked();
+   void jobPlotButtonClicked();
    void restoreButtonClicked();
    void undockWindowButton();
    void treeItemChanged(QTreeWidgetItem *, QTreeWidgetItem *);
@@ -100,16 +123,24 @@ public slots:
    void closePage();
    void setPreferences();
    void readPreferences();
+   void waitEnter();
+   void waitExit();
+   void repopLists();
+   void reloadRepopLists();
+   void popLists();
+   void goToPreviousPage();
 
 protected:
    void closeEvent(QCloseEvent *event);
    void keyPressEvent(QKeyEvent *event);
 
 private:
-   void createConnections(); 
+   void connectConsole();
    void createPages();
-   QTreeWidgetItem *createTopPage(char *name);
-   QTreeWidgetItem *createPage(char *name, QTreeWidgetItem *parent);
+   void connectSignals(); 
+   void disconnectSignals(); 
+   void connectConsoleSignals();
+   void disconnectConsoleSignals(Console *console);
 
 private:
    Console *m_currentConsole;
@@ -117,6 +148,12 @@ private:
    QStringList m_cmd_history;
    int m_cmd_last;
    QTreeWidgetItem *m_firstItem;
+   QTreeWidgetItem *m_waitTreeItem;
+   bool m_isClosing;
+   bool m_waitState;
+   bool m_doConnect;
+   QList<QTreeWidgetItem *> m_treeWidgetStack;
+   bool m_treeStackTrap;
 };
 
 #include "ui_prefs.h"