19 const bool is_paused = data.is_paused();
22 ImGui::Text(
"Status: ");
26 ImGui::TextColored(ImVec4(0.8f, 0.4f, 0.4f, 1.0f),
"Stopped");
30 ImGui::TextColored(ImVec4(0.8f, 0.8f, 0.4f, 1.0f),
"Paused");
34 ImGui::TextColored(ImVec4(0.4f, 0.8f, 0.4f, 1.0f),
"Playing");
42 if(!is_playing || is_paused)
44 if(ImGui::Button(
"Play"))
50 ImGui::SetItemTooltip(
"Start particle emission and simulation");
54 ImGui::BeginDisabled();
55 ImGui::Button(
"Play");
62 if(is_playing && !is_paused)
64 if(ImGui::Button(
"Pause"))
69 ImGui::SetItemTooltip(
"Pause particle simulation (particles remain visible)");
71 else if(is_playing && is_paused)
73 if(ImGui::Button(
"Resume"))
78 ImGui::SetItemTooltip(
"Resume particle simulation from paused state");
82 ImGui::BeginDisabled();
83 ImGui::Button(
"Pause");
92 if(ImGui::Button(
"Stop"))
97 ImGui::SetItemTooltip(
"Stop emission and clear all particles");
100 if(ImGui::Button(
"Stop and Reset"))
102 data.stop_and_reset();
105 ImGui::SetItemTooltip(
"Stop emission and clear all particles");
109 ImGui::BeginDisabled();
110 ImGui::Button(
"Stop");
112 ImGui::Button(
"Stop and Reset");
113 ImGui::EndDisabled();
Component that wraps particle system emitter functionality.
auto is_playing() const -> bool
auto inspect_var_properties(rtti::context &ctx, entt::meta_any &var, const meta_any_proxy &var_proxy, const var_info &info, const entt::meta_custom &custom) -> inspect_result
Inspects all properties of a complex object recursively.
auto inspect(rtti::context &ctx, entt::meta_any &var, const meta_any_proxy &var_proxy, const var_info &info, const entt::meta_custom &custom) -> inspect_result override