paysages3d/src/interface/desktop/inputmaterial.cpp

48 lines
944 B
C++
Raw Normal View History

#include "inputmaterial.h"
#include <QLabel>
#include <QPushButton>
#include <QPainter>
#include <QColorDialog>
2013-08-18 15:13:15 +00:00
#include "lighting/DialogMaterialEditor.h"
#include "previewmaterial.h"
InputMaterial::InputMaterial(QWidget* form, QString label, SurfaceMaterial* value) : BaseInput(form, label)
{
_value = value;
2013-08-18 15:13:15 +00:00
_preview = new SmallMaterialPreview(form, value);
_preview->setMinimumSize(100, 40);
2013-08-18 15:13:15 +00:00
_control = new QPushButton(tr("Edit"), form);
_control->setMaximumWidth(150);
connect((QPushButton*)_control, SIGNAL(clicked()), this, SLOT(editMaterial()));
}
void InputMaterial::updatePreview()
{
_preview->update();
BaseInput::updatePreview();
}
void InputMaterial::applyValue()
{
BaseInput::applyValue();
}
void InputMaterial::revert()
{
BaseInput::revert();
}
void InputMaterial::editMaterial()
{
2013-08-18 15:13:15 +00:00
if (DialogMaterialEditor::getMaterial(_control, _value))
{
applyValue();
}
}