1
Fork 0
mirror of https://github.com/redstrate/Novus.git synced 2025-04-28 22:47:45 +00:00
novus/parts/exd/exdpart.h

34 lines
No EOL
817 B
C++

// SPDX-FileCopyrightText: 2023 Joshua Goins <josh@redstrate.com>
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
#include <QFormLayout>
#include <QMap>
#include <QTabWidget>
#include <QWidget>
#include <physis.hpp>
// TODO: rename to "EXDH" or "Excel" part or something similar because you cannot preview EXD on it's own
class EXDPart : public QWidget
{
Q_OBJECT
public:
explicit EXDPart(GameData *data);
void loadSheet(const QString &name, physis_Buffer buffer);
private:
GameData *data = nullptr;
QTabWidget *pageTabWidget = nullptr;
QFormLayout *headerFormLayout = nullptr;
struct CachedExcel {
physis_EXH *exh = nullptr;
physis_EXD exd{};
};
QMap<QString, CachedExcel> cachedExcelSheets;
Language getSuitableLanguage(physis_EXH *pExh);
};