2010-08-10 01:38:37 +08:00
|
|
|
#if !defined(__PREVIEWSETTINGSDLG_H)
|
|
|
|
#define __PREVIEWSETTINGSDLG_H
|
|
|
|
|
|
|
|
#include "common.h"
|
|
|
|
#include <mitsuba/hw/renderer.h>
|
|
|
|
|
|
|
|
namespace Ui {
|
|
|
|
class PreviewSettingsDialog;
|
|
|
|
}
|
|
|
|
|
|
|
|
struct SceneContext;
|
|
|
|
class PreviewSettingsDialog : public QDialog {
|
|
|
|
Q_OBJECT
|
|
|
|
public:
|
|
|
|
PreviewSettingsDialog(QWidget *parent,
|
|
|
|
SceneContext *ctx, const RendererCapabilities *cap);
|
|
|
|
virtual ~PreviewSettingsDialog();
|
|
|
|
|
|
|
|
signals:
|
|
|
|
void pathLengthChanged(int length);
|
|
|
|
void shadowMapResolutionChanged(int resolution);
|
|
|
|
void clampingChanged(Float clamping);
|
|
|
|
void exposureChanged(Float exposure);
|
|
|
|
void gammaChanged(bool srgb, Float gamma);
|
|
|
|
void previewMethodChanged(EPreviewMethod method);
|
|
|
|
void toneMappingMethodChanged(EToneMappingMethod method);
|
|
|
|
void reinhardKeyChanged(Float key);
|
|
|
|
void reinhardBurnChanged(Float burn);
|
2010-08-29 04:10:05 +08:00
|
|
|
void diffuseReceiversChanged(bool);
|
|
|
|
void diffuseSourcesChanged(bool);
|
2010-08-10 01:38:37 +08:00
|
|
|
|
|
|
|
protected slots:
|
|
|
|
void on_pathLengthSlider_valueChanged(int value);
|
|
|
|
void on_clampingSlider_valueChanged(int value);
|
|
|
|
void on_shadowResolutionCombo_activated(int index);
|
|
|
|
void on_exposureSlider_valueChanged(int value);
|
|
|
|
void on_exposureSpinBox_valueChanged(double value);
|
|
|
|
void on_gammaSpinBox_valueChanged(double value);
|
|
|
|
void on_sRGBCheckBox_stateChanged(int state);
|
2010-08-29 04:10:05 +08:00
|
|
|
void on_diffuseReceiversBox_stateChanged(int state);
|
|
|
|
void on_diffuseSourcesBox_stateChanged(int state);
|
2010-08-10 01:38:37 +08:00
|
|
|
void on_resetButton_clicked();
|
|
|
|
void on_previewMethodCombo_activated(int index);
|
|
|
|
void on_toneMappingMethodCombo_activated(int index);
|
|
|
|
void on_keySlider_valueChanged(int value);
|
|
|
|
|
|
|
|
protected:
|
|
|
|
void changeEvent(QEvent *e);
|
|
|
|
|
|
|
|
private:
|
|
|
|
Ui::PreviewSettingsDialog *ui;
|
|
|
|
bool m_ignoreEvent;
|
|
|
|
SceneContext *m_context;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // __PREVIEWSETTINGSDLG_H
|