#ifndef MAINWINDOW_H #define MAINWINDOW_H #include "enums.h" #include "structs.h" #include "utils.h" #include "aboutdialog.h" #include "compression.h" #include "ffparser.h" #include "zfparser.h" #include "modelviewer.h" #include #include #include #include #include #include #include #include #include #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); void Reset(); private slots: bool OpenFastFile(const QString aFastFilePath); bool OpenFastFile(); bool OpenZoneFile(const QString aZoneFilePath); bool OpenZoneFile(); int LoadFile_D3DBSP(const QString aFilePath); private: Ui::MainWindow *ui; QMap mTypeMap; QStringList mTypeOrder; quint32 mTagCount; quint32 mRecordCount; QMap mRawFileMap; QMap mTreeMap; QMap>> mStrTableMap; QTreeWidget *mTreeWidget; QTreeWidgetItem *mRootItem; QPlainTextEdit *mScriptEditor; ModelViewer *mModelViewer; quint32 mBSPVersion; quint32 mDiskLumpCount; QVector mDiskLumpOrder; QMap mLumps; }; #endif // MAINWINDOW_H