+ return GetImplementation(*this).GetRootLayer();
+}
+
+void Window::SetBackgroundColor(const Vector4& color)
+{
+ GetImplementation(*this).SetBackgroundColor(color);
+}
+
+Vector4 Window::GetBackgroundColor() const
+{
+ return GetImplementation(*this).GetBackgroundColor();
+}
+
+void Window::Raise()
+{
+ GetImplementation(*this).mFocusChangeSignal.Emit(*this, true);
+}
+
+void Window::Hide()
+{
+ GetImplementation(*this).mVisibilityChangedSignal.Emit(*this, false);
+ GetImplementation(*this).mVisible = false;
+}
+
+bool Window::IsVisible() const
+{
+ return GetImplementation(*this).mVisible;
+}
+
+FocusChangeSignalType& Window::FocusChangeSignal()
+{
+ return GetImplementation(*this).mFocusChangeSignal;
+}
+
+ResizeSignalType& Window::ResizeSignal()
+{
+ return GetImplementation(*this).mResizeSignal;
+}
+
+Window::KeyEventSignalType& Window::KeyEventSignal()
+{
+ return GetImplementation(*this).KeyEventSignal();
+}
+
+Window::TouchEventSignalType& Window::TouchedSignal()
+{
+ return GetImplementation(*this).TouchedSignal();