diff options
| author | isanae <14251494+isanae@users.noreply.github.com> | 2019-06-17 04:54:41 -0400 |
|---|---|---|
| committer | isanae <14251494+isanae@users.noreply.github.com> | 2019-07-02 10:10:17 -0400 |
| commit | 81815d202b4364847062ba248321474ef5a2d686 (patch) | |
| tree | c576425a1f8d301e604f44310e6fa3d503bb52c7 /src/modinfodialogtextfiles.h | |
| parent | b96f154625a0a139e722731b055f022bc90c2058 (diff) | |
split ini tab stuff to IniFilesTab
refactored TextFilesTab into GenericFiles so it can be used by IniFilesTab
Diffstat (limited to 'src/modinfodialogtextfiles.h')
| -rw-r--r-- | src/modinfodialogtextfiles.h | 41 |
1 files changed, 34 insertions, 7 deletions
diff --git a/src/modinfodialogtextfiles.h b/src/modinfodialogtextfiles.h index 80eb9dc0..8725ea09 100644 --- a/src/modinfodialogtextfiles.h +++ b/src/modinfodialogtextfiles.h @@ -2,23 +2,50 @@ #define MODINFODIALOGTEXTFILES_H #include "modinfodialog.h" +#include <QSplitter> +#include <QListWidget> -class TextFileItem; +class FileListItem; +class TextEditor; -class TextFilesTab : public ModInfoDialogTab +class GenericFilesTab : public ModInfoDialogTab { public: - TextFilesTab(Ui::ModInfoDialog* ui); + GenericFilesTab(QListWidget* list, QSplitter* splitter, TextEditor* editor); void clear() override; - bool feedFile(const QString& rootPath, const QString& fullPath) override; bool canClose() override; + bool feedFile(const QString& rootPath, const QString& fullPath) override; -private: - Ui::ModInfoDialog* ui; +protected: + QListWidget* m_list; + TextEditor* m_editor; + + virtual bool wantsFile(const QString& rootPath, const QString& fullPath) const = 0; +private: void onSelection(QListWidgetItem* current, QListWidgetItem* previous); - void select(TextFileItem* item); + void select(FileListItem* item); +}; + + +class TextFilesTab : public GenericFilesTab +{ +public: + TextFilesTab(Ui::ModInfoDialog* ui); + +protected: + bool wantsFile(const QString& rootPath, const QString& fullPath) const override; +}; + + +class IniFilesTab : public GenericFilesTab +{ +public: + IniFilesTab(Ui::ModInfoDialog* ui); + +protected: + bool wantsFile(const QString& rootPath, const QString& fullPath) const override; }; #endif // MODINFODIALOGTEXTFILES_H |
