+void Window::SetParent( Dali::Window& parent )
+{
+ if ( DALI_UNLIKELY( parent ) )
+ {
+ mParentWindow = parent;
+ Dali::Window grandParent = Dali::DevelWindow::GetParent( parent );
+ // check circular parent window setting
+ if ( DALI_UNLIKELY( grandParent ) && mWindowBase->IsMatchedWindow( grandParent.GetNativeHandle() ) )
+ {
+ Dali::DevelWindow::Unparent( parent );
+ }
+ mWindowBase->SetParent( parent.GetNativeHandle() );
+ }
+}
+
+void Window::Unparent()
+{
+ Any parent;
+ mWindowBase->SetParent( parent );
+}
+
+Dali::Window Window::GetParent()
+{
+ return mParentWindow;
+}
+