/*
QGLView
Copyright (C) 2012 Ivan Pelipenko peri4ko@gmail.com
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
*/
#ifndef MATERIAL_EDITOR_H
#define MATERIAL_EDITOR_H
#include
#include "gltypes.h"
#include "ui_material_editor.h"
class MaterialEditor: public QWidget, private Ui::MaterialEditor
{
Q_OBJECT
public:
explicit MaterialEditor(QWidget * parent = 0);
void setMaterial(const Material & m);
Material material();
protected:
void changeEvent(QEvent * e);
bool active;
private slots:
void materialChanged() {if (active) emit changed();}
void on_buttonDiffuseSelect_clicked();
void on_buttonDiffuseClear_clicked() {lineDiffuse->setText(""); lineDiffuse->setProperty("GLpath", ""); materialChanged();}
void on_buttonBumpSelect_clicked();
void on_buttonBumpClear_clicked() {lineBump->setText(""); lineBump->setProperty("GLpath", ""); materialChanged();}
void on_buttonReliefSelect_clicked();
void on_buttonReliefClear_clicked() {lineRelief->setText(""); lineRelief->setProperty("GLpath", ""); materialChanged();}
void on_buttonReflFrontSelect_clicked();
void on_buttonReflFrontClear_clicked() {lineReflFront->setText(""); lineReflFront->setProperty("GLpath", ""); materialChanged();}
void on_buttonReflBackSelect_clicked();
void on_buttonReflBackClear_clicked() {lineReflBack->setText(""); lineReflBack->setProperty("GLpath", ""); materialChanged();}
void on_buttonReflLeftSelect_clicked();
void on_buttonReflLeftClear_clicked() {lineReflLeft->setText(""); lineReflLeft->setProperty("GLpath", ""); materialChanged();}
void on_buttonReflRightSelect_clicked();
void on_buttonReflRightClear_clicked() {lineReflRight->setText(""); lineReflRight->setProperty("GLpath", ""); materialChanged();}
void on_buttonReflTopSelect_clicked();
void on_buttonReflTopClear_clicked() {lineReflTop->setText(""); lineReflTop->setProperty("GLpath", ""); materialChanged();}
void on_buttonReflBottomSelect_clicked();
void on_buttonReflBottomClear_clicked() {lineReflBottom->setText(""); lineReflBottom->setProperty("GLpath", ""); materialChanged();}
void on_buttonLoadCubeDir_clicked();
signals:
void changed();
};
#endif // MATERIAL_EDITOR_H