surface_radiance_dockTab.h 915 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
#ifndef _SURFACE_RADIANCE_DOCK_TAB_H_
#define _SURFACE_RADIANCE_DOCK_TAB_H_

#include "ui_surface_radiance.h"
#include "Utils/vbo.h"

namespace CGoGN
{

namespace SCHNApps
{

class SCHNApps;
class Surface_Radiance_Plugin;
struct MapParameters;

class Surface_Radiance_DockTab : public QWidget, public Ui::Surface_Radiance_TabWidget
{
	Q_OBJECT

	friend class Surface_Radiance_Plugin;

public:
	Surface_Radiance_DockTab(SCHNApps* s, Surface_Radiance_Plugin* p);

private:
	SCHNApps* m_schnapps;
	Surface_Radiance_Plugin* m_plugin;
	MapParameters* m_currentParams;
	bool b_updatingUI;

private slots:
	void positionVBOChanged(int index);
	void normalVBOChanged(int index);

private:
	void addPositionVBO(QString name);
	void removePositionVBO(QString name);
	void addNormalVBO(QString name);
	void removeNormalVBO(QString name);

	void updateMapParameters();
};

} // namespace SCHNApps

} // namespace CGoGN

#endif