aboutsummaryrefslogtreecommitdiff
path: root/NvBlast/tools/ArtistTools/source/BlastPlugin/Window/MaterialLibraryPanel.h
diff options
context:
space:
mode:
Diffstat (limited to 'NvBlast/tools/ArtistTools/source/BlastPlugin/Window/MaterialLibraryPanel.h')
-rw-r--r--NvBlast/tools/ArtistTools/source/BlastPlugin/Window/MaterialLibraryPanel.h72
1 files changed, 72 insertions, 0 deletions
diff --git a/NvBlast/tools/ArtistTools/source/BlastPlugin/Window/MaterialLibraryPanel.h b/NvBlast/tools/ArtistTools/source/BlastPlugin/Window/MaterialLibraryPanel.h
new file mode 100644
index 0000000..5c2c970
--- /dev/null
+++ b/NvBlast/tools/ArtistTools/source/BlastPlugin/Window/MaterialLibraryPanel.h
@@ -0,0 +1,72 @@
+#ifndef MATERIALLIBRARYPANEL_H
+#define MATERIALLIBRARYPANEL_H
+
+#include <QtWidgets/QWidget>
+#include "ProjectParams.h"
+
+class RenderMaterial;
+
+namespace Ui {
+class MaterialLibraryPanel;
+}
+
+class MaterialLibraryPanel : public QWidget
+{
+ Q_OBJECT
+
+public:
+ explicit MaterialLibraryPanel(QWidget *parent = 0);
+ ~MaterialLibraryPanel();
+ void updateValues();
+
+ static MaterialLibraryPanel* ins();
+ void addMaterial(std::string materialName, std::string diffuseTexture);
+ void removeMaterial(std::string name);
+ std::map<std::string, RenderMaterial*>& getRenderMaterials(){ return m_RenderMaterialMap; }
+ void deleteMaterials();
+
+private slots:
+ void on_btnAddMat_clicked();
+
+ void on_btnModifyMat_clicked();
+
+ void on_btnRemoveMat_clicked();
+
+ void on_listWidget_currentRowChanged(int currentRow);
+
+ void on_btnDiffuseColor_clicked();
+
+ void on_btnDiffuseColorTex_clicked();
+
+ void on_btnDiffuseColorTexReload_clicked();
+
+ void on_btnDiffuseColorTexClear_clicked();
+
+ void on_btnSpecularColor_clicked();
+
+ void on_btnSpecularColorTex_clicked();
+
+ void on_btnSpecularColorTexReload_clicked();
+
+ void on_btnSpecularColorTexClear_clicked();
+
+ void on_spinSpecularShin_valueChanged(double arg1);
+
+ void on_btnNormalColorTex_clicked();
+
+ void on_btnNormalColorTexReload_clicked();
+
+ void on_btnNormalColorTexClear_clicked();
+
+private:
+ void _refreshMaterialValues(int idx);
+ BPPGraphicsMaterial* _getSelectedMaterial();
+
+ std::map<std::string, RenderMaterial*> m_RenderMaterialMap;
+ std::vector<std::string> m_NeedDeleteRenderMaterials;
+
+private:
+ Ui::MaterialLibraryPanel *ui;
+};
+
+#endif // MATERIALLIBRARYPANEL_H