2014-08-28 08:29:12 +00:00
|
|
|
#ifndef MAINMODELERWINDOW_H
|
|
|
|
#define MAINMODELERWINDOW_H
|
|
|
|
|
|
|
|
#include "modeler_global.h"
|
|
|
|
|
|
|
|
#include <QQuickView>
|
|
|
|
|
|
|
|
namespace paysages {
|
|
|
|
namespace modeler {
|
|
|
|
|
2015-11-09 21:30:46 +00:00
|
|
|
class MainModelerWindow : public QQuickView {
|
2014-08-28 08:29:12 +00:00
|
|
|
Q_OBJECT
|
2015-11-09 21:30:46 +00:00
|
|
|
public:
|
2014-08-28 08:29:12 +00:00
|
|
|
MainModelerWindow();
|
|
|
|
virtual ~MainModelerWindow();
|
|
|
|
|
2015-12-29 23:20:20 +00:00
|
|
|
QObject *findQmlObject(const string &objectName);
|
|
|
|
void setQmlProperty(const string &objectName, const string &propertyName, const QVariant &value);
|
|
|
|
void connectQmlSignal(const string &objectName, const char *signal, const QObject *receiver, const char *method);
|
2015-08-18 16:22:16 +00:00
|
|
|
|
2015-12-29 23:20:20 +00:00
|
|
|
string getState() const;
|
|
|
|
void setState(const string &stateName);
|
2014-08-28 13:09:47 +00:00
|
|
|
|
2015-11-09 21:30:46 +00:00
|
|
|
inline Scenery *getScenery() const {
|
|
|
|
return scenery;
|
|
|
|
}
|
|
|
|
inline OpenGLRenderer *getRenderer() const {
|
|
|
|
return renderer;
|
|
|
|
}
|
|
|
|
inline ModelerCameras *getCamera() const {
|
|
|
|
return cameras;
|
|
|
|
}
|
|
|
|
|
|
|
|
public slots:
|
2015-08-19 23:15:08 +00:00
|
|
|
void newFile();
|
|
|
|
void saveFile();
|
|
|
|
void loadFile();
|
|
|
|
void exit();
|
|
|
|
|
2015-11-09 21:30:46 +00:00
|
|
|
protected:
|
2014-09-09 15:56:52 +00:00
|
|
|
virtual void keyReleaseEvent(QKeyEvent *event) override;
|
|
|
|
|
2015-12-10 22:41:42 +00:00
|
|
|
protected slots:
|
|
|
|
void effectiveExit();
|
|
|
|
|
2015-11-09 21:30:46 +00:00
|
|
|
private:
|
2015-08-18 20:29:18 +00:00
|
|
|
Scenery *scenery;
|
2014-08-28 08:29:12 +00:00
|
|
|
OpenGLRenderer *renderer;
|
2014-08-28 13:09:47 +00:00
|
|
|
|
|
|
|
AtmosphereModeler *atmosphere;
|
|
|
|
WaterModeler *water;
|
2014-09-09 15:56:52 +00:00
|
|
|
|
2014-09-18 15:38:37 +00:00
|
|
|
ModelerCameras *cameras;
|
|
|
|
|
2014-09-09 15:56:52 +00:00
|
|
|
RenderPreviewProvider *render_preview_provider;
|
|
|
|
RenderProcess *render_process;
|
2014-08-28 08:29:12 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // MAINMODELERWINDOW_H
|