#pragma once

#include <QtWidgets/QMainWindow>
#include <qwidget.h>
#include <QByteArray>
#include <QStringList>
#include <QLabel>
#include "ui_MainWindow.h"
#include "..\Header\FileInfoWindow.h"

struct Material;

class MainWindow : public QMainWindow
{
	Q_OBJECT

public:
	MainWindow(QWidget *parent = Q_NULLPTR);
	~MainWindow();

private:
	Ui::MainWindowClass* ui;
	int m_curSeverity;
	void setupWidgets();
	QByteArray m_fileInfo;
	QLabel* m_output;
	FileInfoWindow* m_infoWindow;

private:
	void openFile();
	void aboutFile();
	void aboutTool();
	void takeScreenShot();

protected:
	virtual void resizeEvent(QResizeEvent * e) Q_DECL_OVERRIDE;

public slots:
	void printMessage(QString message, int severity);
	void setFileInfo(QString name, QVector<Material>* materials, int vertices, int triangle);

signals:
	void loadFile(QString);
};
