Files
XCEngine/new_editor/src/panels/Panel.h

30 lines
528 B
C++

#pragma once
#include <string>
namespace XCEngine {
namespace NewEditor {
class Panel {
public:
explicit Panel(std::string name, bool visible = true);
virtual ~Panel();
const std::string& GetName() const;
void SetName(const std::string& name);
bool IsVisible() const;
void SetVisible(bool visible);
void ToggleVisible();
void RenderIfVisible();
virtual void Render() = 0;
private:
std::string m_name;
bool m_visible = true;
};
} // namespace NewEditor
} // namespace XCEngine