From 25743b14a97cc66fec963f92ce889af3198b44e0 Mon Sep 17 00:00:00 2001 From: Jinhao Date: Fri, 18 Dec 2015 00:57:46 +0800 Subject: [PATCH] add native_interface::set_parent --- include/nana/gui/detail/native_window_interface.hpp | 1 + source/gui/detail/native_window_interface.cpp | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/include/nana/gui/detail/native_window_interface.hpp b/include/nana/gui/detail/native_window_interface.hpp index 5db4a645..fa935799 100644 --- a/include/nana/gui/detail/native_window_interface.hpp +++ b/include/nana/gui/detail/native_window_interface.hpp @@ -70,6 +70,7 @@ namespace detail static void capture_window(native_window_type, bool); static nana::point cursor_position(); static native_window_type get_owner_window(native_window_type); + static native_window_type set_parent(native_window_type child, native_window_type new_parent); //For Caret static void caret_create(native_window_type, const ::nana::size&); static void caret_destroy(native_window_type); diff --git a/source/gui/detail/native_window_interface.cpp b/source/gui/detail/native_window_interface.cpp index 202a76d3..7059e118 100644 --- a/source/gui/detail/native_window_interface.cpp +++ b/source/gui/detail/native_window_interface.cpp @@ -1199,6 +1199,17 @@ namespace nana{ return reinterpret_cast(::GetWindow(reinterpret_cast(wd), GW_OWNER)); #elif defined(NANA_X11) return restrict::spec.get_owner(wd); +#endif + } + + native_window_type native_interface::set_parent(native_window_type child, native_window_type new_parent) + { +#ifdef NANA_WINDOWS + return reinterpret_cast( + ::SetParent(reinterpret_cast(child), reinterpret_cast(new_parent)) + ); +#elif defined(NANA_X11) + #endif }