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.
+ 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
Switzerland, email:ftf@fsfeurope.org.
*/
/*
- * Version $Id: restore.h 4945 2007-05-31 01:24:28Z bartleyd2 $
+ * Version $Id$
*
* Kern Sibbald, February 2007
*/
#include "pages.h"
#include "ui_restoretree.h"
+
/*
* A restore tree to view files in the catalog
*/
restoreTree();
~restoreTree();
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_splitText;
bool m_populated;
- QRegExp m_winregex;
- QRegExp m_slashregex;
+ bool m_dropdownChanged;
+ QRegExp m_winRegExpDrive;
+ QRegExp m_winRegExpPath;
bool m_slashTrap;
- bool m_winTrap;
- bool m_isWin;
- //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_ */