class AddComponentRender { Entity entity; AddComponentRender(Entity _entity) { entity = _entity; } void addComponentPopup() { UI::titleCenter("\uf055 Add Component"); UI::separator(); UI::subMenu("Rendering", Callback(this.addComponentRendering)); if (UI::menuItem("Script Component")) { } } void addComponentRendering() { if (entity.hasMeshComponent()) { UI::menuItemDisabled("\uf248 Mesh Render Component"); } else { if (UI::menuItem("\uf248 Mesh Render Component")) { entity.createMeshComponent(); } } if (entity.hasShaderComponent()) { UI::menuItemDisabled("\uf042 Shader Render Component"); } else { if (UI::menuItem("\uf042 Shader Render Component")) { entity.createShaderComponent(); } } if (entity.hasCameraComponent()) { UI::menuItemDisabled("\uf030 Camera Component"); } else { if (UI::menuItem("\uf030 Camera Component")) { entity.createCameraComponent(); } } } }