SDK/BaseWidget: Add OnParentResized method

This commit is contained in:
Lynix 2017-01-11 18:27:32 +01:00
parent c9b84e3852
commit 4f1438f0f1
3 changed files with 14 additions and 1 deletions

View File

@ -78,11 +78,13 @@ namespace Ndk
virtual void OnMouseButtonPress(int x, int y, Nz::Mouse::Button button); virtual void OnMouseButtonPress(int x, int y, Nz::Mouse::Button button);
virtual void OnMouseButtonRelease(int x, int y, Nz::Mouse::Button button); virtual void OnMouseButtonRelease(int x, int y, Nz::Mouse::Button button);
virtual void OnMouseExit(); virtual void OnMouseExit();
virtual void OnParentResized(const Nz::Vector2f& newSize);
virtual void OnTextEntered(char32_t character, bool repeated); virtual void OnTextEntered(char32_t character, bool repeated);
private: private:
inline BaseWidget(); inline BaseWidget();
inline void NotifyParentResized(const Nz::Vector2f& newSize);
inline void UpdateCanvasIndex(std::size_t index); inline void UpdateCanvasIndex(std::size_t index);
std::size_t m_canvasIndex; std::size_t m_canvasIndex;

View File

@ -63,6 +63,7 @@ namespace Ndk
inline void BaseWidget::SetContentSize(const Nz::Vector2f& size) inline void BaseWidget::SetContentSize(const Nz::Vector2f& size)
{ {
NotifyParentResized(size);
m_contentSize = size; m_contentSize = size;
Layout(); Layout();
@ -78,6 +79,12 @@ namespace Ndk
Layout(); Layout();
} }
inline void BaseWidget::NotifyParentResized(const Nz::Vector2f& newSize)
{
for (const auto& widgetPtr : m_children)
widgetPtr->OnParentResized(newSize);
}
inline void BaseWidget::UpdateCanvasIndex(std::size_t index) inline void BaseWidget::UpdateCanvasIndex(std::size_t index)
{ {
m_canvasIndex = index; m_canvasIndex = index;

View File

@ -126,6 +126,10 @@ namespace Ndk
{ {
} }
void BaseWidget::OnParentResized(const Nz::Vector2f& newSize)
{
}
void BaseWidget::OnTextEntered(char32_t character, bool repeated) void BaseWidget::OnTextEntered(char32_t character, bool repeated)
{ {
} }