// Purpose: implementation of wxNonOwnedWindow
// Author: Stefan Csomor
// Created: 2008-03-24
-// RCS-ID: $Id$
// Copyright: (c) Stefan Csomor 2008
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
wxWindow* g_MacLastWindow = NULL ;
+clock_t wxNonOwnedWindow::s_lastFlush = 0;
+
// unified title and toolbar constant - not in Tiger headers, so we duplicate it here
#define kWindowUnifiedTitleAndToolbarAttribute (1 << 7)
{
// as apps expect a size event to occur when the window is shown,
// generate one when it is shown with effect too
- wxSizeEvent event(GetSize(), m_windowId);
- event.SetEventObject(this);
- HandleWindowEvent(event);
+ SendSizeEvent();
}
return true;
HandleWindowEvent(wxevent);
}
-void wxNonOwnedWindow::HandleResized( double timestampsec )
+void wxNonOwnedWindow::HandleResized( double WXUNUSED(timestampsec) )
{
- wxSizeEvent wxevent( GetSize() , GetId());
- wxevent.SetTimestamp( (int) (timestampsec * 1000) );
- wxevent.SetEventObject( this );
- HandleWindowEvent(wxevent);
+ SendSizeEvent();
// we have to inform some controls that have to reset things
// relative to the toplevel window (e.g. OpenGL buffers)
wxWindowMac::MacSuperChangedPosition() ; // like this only children will be notified
if ( show )
{
// because apps expect a size event to occur at this moment
- wxSizeEvent event(GetSize() , m_windowId);
- event.SetEventObject(this);
- HandleWindowEvent(event);
+ SendSizeEvent();
}
return true ;
*height = h ;
}
+void wxNonOwnedWindow::WindowWasPainted()
+{
+ s_lastFlush = clock();
+}
void wxNonOwnedWindow::Update()
{
- m_nowpeer->Update();
+ if ( clock() - s_lastFlush > CLOCKS_PER_SEC / 30 )
+ {
+ s_lastFlush = clock();
+ m_nowpeer->Update();
+ }
}
WXWindow wxNonOwnedWindow::GetWXWindow() const
return m_nowpeer ? m_nowpeer->GetWXWindow() : NULL;
}
+void *wxNonOwnedWindow::OSXGetViewOrWindow() const
+{
+ return GetWXWindow();
+}
+
// ---------------------------------------------------------------------------
// Shape implementation
// ---------------------------------------------------------------------------