Sdk/BaseWidget: Add Center() method

Former-commit-id: 337837199f8909bd39dd10129b379331e9344dd7 [formerly e29dfa72869a7e4831cdf1880db92a7f96cb7755] [formerly fef5a65af9b6bc7b12813a79db818aa6f8034c5f [formerly 5e38bf5eda4f96df7bb2f13d406830a48f293bb9]]
Former-commit-id: b06665741f29f91b9e26fe270e6addd699c5111b [formerly aaf5e62dbdda284ec70dae55b7c37c5e86b75ebc]
Former-commit-id: a9c1a3dc6df30f1688ad9143ba56912d02285c19
This commit is contained in:
Lynix 2016-10-11 15:41:19 +02:00
parent 2fdc7a8878
commit 7cab7cacaa
4 changed files with 13 additions and 1 deletions

View File

@ -34,6 +34,8 @@ namespace Ndk
template<typename T, typename... Args> T& Add(Args&&... args);
inline void AddChild(std::unique_ptr<BaseWidget>&& widget);
inline void Center();
void EnableBackground(bool enable);
//virtual BaseWidget* Clone() const = 0;

View File

@ -32,6 +32,15 @@ namespace Ndk
m_children.emplace_back(std::move(widget));
}
inline void BaseWidget::Center()
{
NazaraAssert(m_widgetParent, "Widget has no parent");
Nz::Vector2f parentSize = m_widgetParent->GetSize();
Nz::Vector2f mySize = GetSize();
SetPosition((parentSize.x - mySize.x) / 2.f, (parentSize.y - mySize.y) / 2.f);
}
inline Canvas* BaseWidget::GetCanvas()
{
return m_canvas;

View File

@ -17,6 +17,7 @@ namespace Ndk
NazaraAssert(parent->GetCanvas(), "Parent has no canvas");
m_canvas = parent->GetCanvas();
m_widgetParent = parent;
m_world = m_canvas->GetWorld();
m_canvasIndex = m_canvas->RegisterWidget(this);

View File

@ -10,7 +10,7 @@
namespace Ndk
{
void Ndk::Canvas::ResizeToContent()
void Canvas::ResizeToContent()
{
}