]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/qt-console/restore/restoretree.h
Enhance FD status to have level
[bacula/bacula] / bacula / src / qt-console / restore / restoretree.h
index 589d2cd4e5b96702d8a9db6016d5fcc9bff9aa24..ea9baae6fab4112f5f3941f61da6ffe479e47680 100644 (file)
    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.
 */
 /*
- *   Version $Id: restore.h 4945 2007-05-31 01:24:28Z bartleyd2 $
+ *   Version $Id$
  *
  *  Kern Sibbald, February 2007
  */
@@ -38,6 +38,7 @@
 #include "pages.h"
 #include "ui_restoretree.h"
 
+
 /*  
  * A restore tree to view files in the catalog
  */
@@ -48,33 +49,75 @@ class restoreTree : public Pages, public Ui::restoreTreeForm
 public:
    restoreTree();
    ~restoreTree();
+   virtual void PgSeltreeWidgetClicked();
    virtual void currentStackItem();
+   enum folderCheckState
+   {
+      FolderUnchecked = 0,
+      FolderGreenChecked = 1,
+      FolderWhiteChecked = 2,
+      FolderBothChecked = 3
+   };
 
 private slots:
    void refreshButtonPushed();
+   void restoreButtonPushed();
    void jobComboChanged(int);
-   void directoryItemChanged(QTreeWidgetItem *, QTreeWidgetItem *);
-   void fileItemChanged(QTableWidgetItem *,QTableWidgetItem *);
+   void directoryCurrentItemChanged(QTreeWidgetItem *, QTreeWidgetItem *);
+   void fileCurrentItemChanged(QTableWidgetItem *,QTableWidgetItem *);
    void directoryItemExpanded(QTreeWidgetItem *);
+   void setCheckofChildren(QTreeWidgetItem *item, Qt::CheckState);
+   void directoryItemChanged(QTreeWidgetItem *, int);
+   void fileTableItemChanged(QTableWidgetItem *);
+   void versionTableItemChanged(QTableWidgetItem *);
+   void updateRefresh();
+   void jobTableCellClicked(int, int);
 
 private:
    void populateDirectoryTree();
+   void populateJobTable();
    void parseDirectory(QString &dir_in);
    bool addDirectory(QString &, QString &);
    void setupPage();
    void writeSettings();
    void readSettings();
+   void fileExceptionInsert(QString &, QString &, Qt::CheckState);
+   void fileExceptionRemove(QString &, QString &);
+   void directoryTreeDisconnectedSet(QTreeWidgetItem *, Qt::CheckState);
+   void fileTableDisconnectedSet(QTableWidgetItem *, Qt::CheckState, bool color);
+   void versionTableDisconnectedSet(QTableWidgetItem *, Qt::CheckState);
+   void updateFileTableChecks();
+   void updateVersionTableChecks();
+   void directoryIconStateInsert(QString &, Qt::CheckState);
+   void directoryIconStateRemove();
+   void directorySetIcon(int operation, int change, QString &, QTreeWidgetItem* item);
+   void fullPathtoSubPaths(QStringList &, QString &);
+   int mostRecentVersionfromFullPath(QString &);
+   void setJobsCheckedList();
+   int queryFileIndex(QString &fullPath, int jobID);
+
+   QSplitter *m_splitter;
+   QString m_groupText;
+   QString m_splitText1;
+   QString m_splitText2;
    bool m_populated;
-   QRegExp m_winRegExpDrive;
-   QRegExp m_winRegExpPath;
-   QRegExp m_slashregex;
+   bool m_dropdownChanged;
    bool m_slashTrap;
-   //QString m_jobCondition;
    QHash<QString, QTreeWidgetItem *> m_dirPaths;
-   QString m_condition;
-   int m_resultCount;
+   QString m_checkedJobs, m_prevJobCombo, m_prevClientCombo, m_prevFileSetCombo;
+   int m_prevLimitSpinBox, m_prevDaysSpinBox;
+   Qt::CheckState m_prevLimitCheckState, m_prevDaysCheckState;
+   QString m_JobsCheckedList;
    int m_debugCnt;
    bool m_debugTrap;
+   QList<Qt::CheckState> m_fileCheckStateList;
+   QList<Qt::CheckState> m_versionCheckStateList;
+   QHash<QString, Qt::CheckState> m_fileExceptionHash;
+   QMultiHash<QString, QString> m_fileExceptionMulti;
+   QHash<QString, int> m_versionExceptionHash;
+   QHash<QString, int> m_directoryIconStateHash;
+   QHash<QString, int> m_directoryPathIdHash;
+   int m_toggleUpIndex, m_toggleDownIndex, m_nullFileNameId;
 };
 
 #endif /* _RESTORETREE_H_ */