git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16341
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
- fixed a condition where a thread can hang during
message/event processing
- increased space between wxRadioBox label and first radio button
- fixed a condition where a thread can hang during
message/event processing
- increased space between wxRadioBox label and first radio button
+- don't fail to register remaining window classes if one fails to register
+- set window proc for non-control windows to avoid problems
+ with multiple wxWindows apps running simultaneously
You call \helpref{wxApp::SetTopWindow}{wxappsettopwindow} to let wxWindows know
about the top window.
You call \helpref{wxApp::SetTopWindow}{wxappsettopwindow} to let wxWindows know
about the top window.
-Note that the program's command line arguments, represented by {\it
-argc} and {\it argv}, are available from within wxApp member functions.
+Note that the program's command line arguments, represented by {\it argc}
+and {\it argv}, are available from within wxApp member functions.
An application closes by destroying all windows. Because all frames must
be destroyed for the application to exit, it is advisable to use parent
An application closes by destroying all windows. Because all frames must
be destroyed for the application to exit, it is advisable to use parent
bool DerivedApp::OnInit()
{
bool DerivedApp::OnInit()
{
- wxFrame *the_frame = new wxFrame(NULL, argv[0]);
+ wxFrame *the_frame = new wxFrame(NULL, ID_MYFRAME, argv[0]);
SetTopWindow(the_frame);
return TRUE;
SetTopWindow(the_frame);
return TRUE;
// Override: rarely.
virtual void OnFatalException() { }
// Override: rarely.
virtual void OnFatalException() { }
+ virtual bool ProcessIdle() = 0;
+
// the worker functions - usually not used directly by the user code
// -----------------------------------------------------------------
// the worker functions - usually not used directly by the user code
// -----------------------------------------------------------------
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
+ virtual bool ProcessIdle();
// implementation only from now on
void OnIdle( wxIdleEvent &event );
// implementation only from now on
void OnIdle( wxIdleEvent &event );
static bool InitialzeVisual();
static void CleanUp();
static bool InitialzeVisual();
static void CleanUp();
void DeletePendingObjects();
#ifdef __WXDEBUG__
void DeletePendingObjects();
#ifdef __WXDEBUG__
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
+ virtual bool ProcessIdle();
// implementation only from now on
void OnIdle( wxIdleEvent &event );
// implementation only from now on
void OnIdle( wxIdleEvent &event );
static bool InitialzeVisual();
static void CleanUp();
static bool InitialzeVisual();
static void CleanUp();
void DeletePendingObjects();
#ifdef __WXDEBUG__
void DeletePendingObjects();
#ifdef __WXDEBUG__
virtual bool Pending() ;
virtual void Dispatch() ;
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending() ;
virtual void Dispatch() ;
virtual bool Yield(bool onlyIfNeeded = FALSE);
+ virtual bool ProcessIdle();
virtual void SetPrintMode(int mode) { m_printMode = mode; }
virtual int GetPrintMode() const { return m_printMode; }
virtual void SetPrintMode(int mode) { m_printMode = mode; }
virtual int GetPrintMode() const { return m_printMode; }
virtual bool OnInit();
void DeletePendingObjects();
virtual bool OnInit();
void DeletePendingObjects();
bool IsExiting() { return !m_keepGoing ; }
public:
bool IsExiting() { return !m_keepGoing ; }
public:
virtual bool Initialized();
virtual bool Pending();
virtual void Dispatch();
virtual bool Initialized();
virtual bool Pending();
virtual void Dispatch();
+ virtual bool ProcessIdle();
// implementation only from now on
void OnIdle(wxIdleEvent &event);
// implementation only from now on
void OnIdle(wxIdleEvent &event);
static bool Initialize();
static void CleanUp();
static bool Initialize();
static void CleanUp();
+ virtual bool ProcessIdle();
void DeletePendingObjects();
virtual bool Yield(bool onlyIfNeeded = FALSE);
void DeletePendingObjects();
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
+ virtual bool ProcessIdle();
virtual bool OnInitGui();
virtual bool OnInitGui();
static void CleanUp();
void DeletePendingObjects();
static void CleanUp();
void DeletePendingObjects();
// Motif-specific
WXAppContext GetAppContext() const { return m_appContext; }
// Motif-specific
WXAppContext GetAppContext() const { return m_appContext; }
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
+ virtual bool ProcessIdle();
virtual void SetPrintMode(int mode) { m_printMode = mode; }
virtual int GetPrintMode() const { return m_printMode; }
virtual void SetPrintMode(int mode) { m_printMode = mode; }
virtual int GetPrintMode() const { return m_printMode; }
// ---------------
void DeletePendingObjects();
// ---------------
void DeletePendingObjects();
#if wxUSE_RICHEDIT
// initialize the richedit DLL of (at least) given version, return TRUE if
#if wxUSE_RICHEDIT
// initialize the richedit DLL of (at least) given version, return TRUE if
virtual bool Pending(void) ;
virtual void Dispatch(void);
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending(void) ;
virtual void Dispatch(void);
virtual bool Yield(bool onlyIfNeeded = FALSE);
+ virtual bool ProcessIdle(void);
virtual void SetPrintMode(int mode) { m_nPrintMode = mode; }
virtual int GetPrintMode(void) const { return m_nPrintMode; }
virtual void SetPrintMode(int mode) { m_nPrintMode = mode; }
virtual int GetPrintMode(void) const { return m_nPrintMode; }
virtual bool DoMessage(void);
virtual bool ProcessMessage(WXMSG* pMsg);
void DeletePendingObjects(void);
virtual bool DoMessage(void);
virtual bool ProcessMessage(WXMSG* pMsg);
void DeletePendingObjects(void);
- bool ProcessIdle(void);
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
virtual bool Pending();
virtual void Dispatch();
virtual bool Yield(bool onlyIfNeeded = FALSE);
+ virtual bool ProcessIdle();
virtual bool OnInitGui();
virtual bool OnInitGui();
static void CleanUp();
void DeletePendingObjects();
static void CleanUp();
void DeletePendingObjects();
WXWindow GetTopLevelWidget() const { return m_topLevelWidget; }
WXColormap GetMainColormap(WXDisplay* display);
WXWindow GetTopLevelWidget() const { return m_topLevelWidget; }
WXColormap GetMainColormap(WXDisplay* display);