Added intermediate state (m_showOnIdle) indicating that

time must be given to a window to get placed correctly
    before it is shown. The avoids jumping windows.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2006-08-22 12:26:22 +00:00
parent cea0869cdf
commit f46ad98f0d
2 changed files with 47 additions and 9 deletions

View File

@@ -117,9 +117,6 @@ public:
virtual WXWidget GetHandle() const { return m_widget; }
// I don't want users to override what's done in idle so everything that
// has to be done in idle time in order for wxGTK to work is done in
// OnInternalIdle
virtual void OnInternalIdle();
// Internal represention of Update()
@@ -179,6 +176,12 @@ public:
// the layouting functions have to be called later on
// (i.e. in idle time, implemented in OnInternalIdle() ).
void GtkUpdateSize() { m_sizeSet = false; }
// Called when a window should delay showing itself
// until idle time. This partly mimmicks defered
// sizing under MSW.
void GtkShowOnIdle() { m_showOnIdle = true; }
// fix up the mouse event coords, used by wxListBox only so far
virtual void FixUpMouseEvent(GtkWidget * WXUNUSED(widget),
@@ -260,6 +263,8 @@ public:
// background style until OnIdle
bool m_mouseButtonDown:1;
bool m_blockScrollEvent:1;
bool m_showOnIdle:1; // postpone showing the window until idle
// C++ has no virtual methods in the constrcutor of any class but we need
// different methods of inserting a child window into a wxFrame,