added settings window,

connected all slider, lineEdits, checkboxes,...,
need to connect everything with the OglViewerWidget now
This commit is contained in:
Anakin
2017-01-23 16:09:06 +01:00
parent 0a9103fdc5
commit 73ee8a4040
7 changed files with 791 additions and 9 deletions

View File

@@ -1,7 +1,7 @@
#pragma once
#include "geometryengine.h"
#include "..\Header\SettingsWindow.h"
#include <QOpenGLWidget>
#include <QOpenGLFunctions>
#include <QMatrix4x4>
@@ -40,10 +40,12 @@ private:
struct {
QVector4D position = { 1,1,1,0 };
QVector3D intensities = { 1.0,1.0,1.0 };
float attenuationFactor = 0.2f;
float attenuationFactor = 0.0f;
float ambientCoefficient = 0.005f;
} m_light;
SettingsWindow* m_settings;
QVector4D m_backgroundColor = {0.5f, 0.8f, 1.0f, 1.0f};
QOpenGLShaderProgram m_program;
@@ -83,6 +85,7 @@ public slots:
void changeDirection(int direction);
void toggleWireframe();
void toggleLight();
void showSettings();
signals:
void sendMessage(QString message, int severity);

View File

@@ -0,0 +1,50 @@
#pragma once
#include <QWidget>
#include "ui_SettingsWindow.h"
class SettingsWindow : public QWidget
{
Q_OBJECT
public:
SettingsWindow(QWidget * parent = Q_NULLPTR);
~SettingsWindow();
private:
Ui::SettingsWindow* ui;
private slots:
// light off
void lightOffRValueChanged(QString value);
void lightOffRValueChanged(int value);
void lightOffGValueChanged(QString value);
void lightOffGValueChanged(int value);
void lightOffBValueChanged(QString value);
void lightOffBValueChanged(int value);
// light on
void lightOnRValueChanged(QString value);
void lightOnRValueChanged(int value);
void lightOnGValueChanged(QString value);
void lightOnGValueChanged(int value);
void lightOnBValueChanged(QString value);
void lightOnBValueChanged(int value);
// light
void lightRValueChanged(QString value);
void lightRValueChanged(int value);
void lightGValueChanged(QString value);
void lightGValueChanged(int value);
void lightBValueChanged(QString value);
void lightBValueChanged(int value);
void autoColorToggled();
void radioToggled();
};