added internal callback when toplevel windows move for opengl canvas
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -263,6 +263,11 @@ void wxGLCanvas::SetViewport()
|
||||
}
|
||||
|
||||
void wxGLCanvas::OnSize(wxSizeEvent& event)
|
||||
{
|
||||
MacUpdateView() ;
|
||||
}
|
||||
|
||||
void wxGLCanvas::MacUpdateView()
|
||||
{
|
||||
if (m_glContext)
|
||||
{
|
||||
@@ -277,6 +282,18 @@ void wxGLCanvas::OnSize(wxSizeEvent& event)
|
||||
}
|
||||
}
|
||||
|
||||
void wxGLCanvas::MacSuperChangedPosition()
|
||||
{
|
||||
MacUpdateView() ;
|
||||
wxWindow::MacSuperChangedPosition() ;
|
||||
}
|
||||
|
||||
void wxGLCanvas::MacTopLevelWindowChangedPosition()
|
||||
{
|
||||
MacUpdateView() ;
|
||||
wxWindow::MacTopLevelWindowChangedPosition() ;
|
||||
}
|
||||
|
||||
void wxGLCanvas::SetCurrent()
|
||||
{
|
||||
if (m_glContext)
|
||||
|
@@ -617,6 +617,8 @@ void wxWindowMac::DoMoveWindow(int x, int y, int width, int height)
|
||||
frame->PositionStatusBar();
|
||||
frame->PositionToolBar();
|
||||
}
|
||||
if ( doMove )
|
||||
wxWindowMac::MacTopLevelWindowChangedPosition() ; // like this only children will be notified
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2194,6 +2196,19 @@ void wxWindowMac::MacSuperChangedPosition()
|
||||
}
|
||||
}
|
||||
|
||||
void wxWindowMac::MacTopLevelWindowChangedPosition()
|
||||
{
|
||||
// only screen-absolute structures have to be moved i.e. glcanvas
|
||||
|
||||
wxNode *node = GetChildren().First();
|
||||
while ( node )
|
||||
{
|
||||
wxWindowMac *child = (wxWindowMac *)node->Data();
|
||||
child->MacTopLevelWindowChangedPosition() ;
|
||||
node = node->Next();
|
||||
}
|
||||
}
|
||||
|
||||
bool wxWindowMac::MacSetPortFocusParams( const Point & localOrigin, const Rect & clipRect, WindowRef window , wxWindowMac* win )
|
||||
{
|
||||
if ( window == NULL )
|
||||
|
@@ -263,6 +263,11 @@ void wxGLCanvas::SetViewport()
|
||||
}
|
||||
|
||||
void wxGLCanvas::OnSize(wxSizeEvent& event)
|
||||
{
|
||||
MacUpdateView() ;
|
||||
}
|
||||
|
||||
void wxGLCanvas::MacUpdateView()
|
||||
{
|
||||
if (m_glContext)
|
||||
{
|
||||
@@ -277,6 +282,18 @@ void wxGLCanvas::OnSize(wxSizeEvent& event)
|
||||
}
|
||||
}
|
||||
|
||||
void wxGLCanvas::MacSuperChangedPosition()
|
||||
{
|
||||
MacUpdateView() ;
|
||||
wxWindow::MacSuperChangedPosition() ;
|
||||
}
|
||||
|
||||
void wxGLCanvas::MacTopLevelWindowChangedPosition()
|
||||
{
|
||||
MacUpdateView() ;
|
||||
wxWindow::MacTopLevelWindowChangedPosition() ;
|
||||
}
|
||||
|
||||
void wxGLCanvas::SetCurrent()
|
||||
{
|
||||
if (m_glContext)
|
||||
|
@@ -617,6 +617,8 @@ void wxWindowMac::DoMoveWindow(int x, int y, int width, int height)
|
||||
frame->PositionStatusBar();
|
||||
frame->PositionToolBar();
|
||||
}
|
||||
if ( doMove )
|
||||
wxWindowMac::MacTopLevelWindowChangedPosition() ; // like this only children will be notified
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2194,6 +2196,19 @@ void wxWindowMac::MacSuperChangedPosition()
|
||||
}
|
||||
}
|
||||
|
||||
void wxWindowMac::MacTopLevelWindowChangedPosition()
|
||||
{
|
||||
// only screen-absolute structures have to be moved i.e. glcanvas
|
||||
|
||||
wxNode *node = GetChildren().First();
|
||||
while ( node )
|
||||
{
|
||||
wxWindowMac *child = (wxWindowMac *)node->Data();
|
||||
child->MacTopLevelWindowChangedPosition() ;
|
||||
node = node->Next();
|
||||
}
|
||||
}
|
||||
|
||||
bool wxWindowMac::MacSetPortFocusParams( const Point & localOrigin, const Rect & clipRect, WindowRef window , wxWindowMac* win )
|
||||
{
|
||||
if ( window == NULL )
|
||||
|
Reference in New Issue
Block a user