void wxNonOwnedWindow::Init()
{
m_nowpeer = NULL;
+ m_isNativeWindowWrapper = false;
}
bool wxNonOwnedWindow::Create(wxWindow *parent,
long style,
const wxString& name)
{
- // init our fields
- Init();
-
m_windowStyle = style;
SetName( name );
if ( parent )
parent->AddChild(this);
- wxBIND_OR_CONNECT_HACK(this, wxEVT_DESTROY, wxWindowDestroyEventHandler,
- wxNonOwnedWindow::OnWindowDestroy, this);
+ return true;
+}
+
+bool wxNonOwnedWindow::Create(wxWindow *parent, WXWindow nativeWindow)
+{
+ m_nowpeer = wxNonOwnedWindowImpl::CreateNonOwnedWindow(this, parent, nativeWindow );
+ m_isNativeWindowWrapper = true;
+ wxAssociateWindowWithWXWindow( m_nowpeer->GetWXWindow() , this ) ;
+ m_peer = wxWidgetImpl::CreateContentView(this);
+ if ( parent )
+ parent->AddChild(this);
+
return true;
}
s_macDeactivateWindow = NULL;
}
-void wxNonOwnedWindow::OnWindowDestroy( wxWindowDestroyEvent &event)
+bool wxNonOwnedWindow::Destroy()
{
- event.Skip();
+ WillBeDestroyed();
+ return wxWindow::Destroy();
+}
+
+void wxNonOwnedWindow::WillBeDestroyed()
+{
if ( m_nowpeer )
m_nowpeer->WillBeDestroyed();
}
return;
int left, top, w, h;
- // perhaps we should do this for all ?
-#ifdef __WXOSX_IPHONE__
- m_peer->GetContentArea(left, top, w, h);
-#else
m_nowpeer->GetContentArea(left, top, w, h);
-#endif
if (width)
*width = w ;
wxCHECK_MSG( HasFlag(wxFRAME_SHAPED), false,
wxT("Shaped windows must be created with the wxFRAME_SHAPED style."));
+ m_shape = region;
+
// The empty region signifies that the shape
// should be removed from the window.
if ( region.IsEmpty() )