1
Fork 0
mirror of https://github.com/redstrate/Novus.git synced 2025-04-26 13:47:46 +00:00
novus/armoury/include/mainwindow.h
Joshua Goins 51ea3c3920 Create reusable material part
This takes the existing properties widget in the new material editor and
makes it reusable across multiple applications. It's now added to the
Armoury which shows the gear's used materials. It's also added to the
Data Explorer which now supports viewing material files.

I fixed the render viewport crashing when hiding it again, and made it
even more resilient.
2024-04-27 13:45:15 -04:00

40 lines
No EOL
843 B
C++

// SPDX-FileCopyrightText: 2023 Joshua Goins <josh@redstrate.com>
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
#include <QComboBox>
#include <physis.hpp>
#include <unordered_map>
#include "fullmodelviewer.h"
#include "gearview.h"
#include "metadataview.h"
#include "mtrlpart.h"
#include "novusmainwindow.h"
#include "singlegearview.h"
struct GameData;
class FileCache;
class PenumbraApi;
class MainWindow : public NovusMainWindow
{
Q_OBJECT
public:
explicit MainWindow(GameData *data);
protected:
void setupAdditionalMenus(QMenuBar *menuBar) override;
private:
SingleGearView *gearView = nullptr;
FullModelViewer *fullModelViewer = nullptr;
QTabWidget *materialsView = nullptr;
MetadataView *metadataView = nullptr;
GameData &data;
FileCache cache;
PenumbraApi *m_api = nullptr;
};