#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include #include #include namespace Ui { class MainWindow; } class QStringList; struct FileEntry { enum Status { STATUS_UNKNOWN, STATUS_UNCHAGED, STATUS_EDITTED }; QFileInfo fileinfo; Status status; QString filename; QString getRelativeFilename(const QString &path) { QString abs_base_dir = QDir(path).absolutePath(); QString relative = fileinfo.absoluteFilePath(); int index = relative.indexOf(abs_base_dir); if(index<0) return QString(""); return relative.right(relative.length() - abs_base_dir.length()-1); } }; class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private: void refresh(); bool runFossil(QStringList &result, const QStringList &args); void loadSettings(); void saveSettings(); const QString &getCurrentWorkspace() { Q_ASSERT(currentWorkspace filemap_t; filemap_t workspaceFiles; int currentWorkspace; }; #endif // MAINWINDOW_H