light/Mirror/src/Panels/PropertiesPanel.h
2022-03-06 22:25:23 +03:30

29 lines
589 B
C++

#pragma once
#include "Panel.h"
#include "Scene/Entity.h"
namespace Light {
class PropertiesPanel: public Panel
{
private:
Entity m_EntityContext;
public:
PropertiesPanel() = default;
~PropertiesPanel() = default;
void OnUserInterfaceUpdate();
void SetEntityContext(Entity entity);
private:
void DrawVec3Control(const std::string& label, glm::vec3& values, float resetValue = 0.0f, float columnWidth = 100.0f);
template<typename ComponentType, typename UIFunction>
void DrawComponent(const std::string& name, Entity entity, UIFunction function);
};
} // namespace Light