Widgets/SimpleWidgetStyles: Fix hovered sprite not being detached on click
This commit is contained in:
parent
24bc1dac1c
commit
f1ee611378
|
|
@ -316,19 +316,25 @@ namespace Nz
|
||||||
if (!pressed)
|
if (!pressed)
|
||||||
m_sprite->SetMaterial(owner->GetMaterial());
|
m_sprite->SetMaterial(owner->GetMaterial());
|
||||||
|
|
||||||
|
if (!m_isHovered)
|
||||||
|
{
|
||||||
GraphicsComponent& gfxComponent = GetRegistry().get<GraphicsComponent>(m_entity);
|
GraphicsComponent& gfxComponent = GetRegistry().get<GraphicsComponent>(m_entity);
|
||||||
gfxComponent.AttachRenderable(m_hoveredSprite, GetRenderMask());
|
gfxComponent.AttachRenderable(m_hoveredSprite, GetRenderMask());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!pressed)
|
if (!pressed)
|
||||||
m_sprite->SetMaterial(owner->GetMaterial());
|
m_sprite->SetMaterial(owner->GetMaterial());
|
||||||
|
|
||||||
|
if (m_isHovered)
|
||||||
|
{
|
||||||
GraphicsComponent& gfxComponent = GetRegistry().get<GraphicsComponent>(m_entity);
|
GraphicsComponent& gfxComponent = GetRegistry().get<GraphicsComponent>(m_entity);
|
||||||
gfxComponent.DetachRenderable(m_hoveredSprite);
|
gfxComponent.DetachRenderable(m_hoveredSprite);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
SimpleLabelWidgetStyle::SimpleLabelWidgetStyle(LabelWidget* labelWidget, std::shared_ptr<MaterialInstance> material, std::shared_ptr<MaterialInstance> hoveredMaterial) :
|
SimpleLabelWidgetStyle::SimpleLabelWidgetStyle(LabelWidget* labelWidget, std::shared_ptr<MaterialInstance> material, std::shared_ptr<MaterialInstance> hoveredMaterial) :
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue