]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/app.cpp
added xpm
[wxWidgets.git] / src / os2 / app.cpp
index cf75302c7832d741c13623afa382663aef7f4d15..7288a6e08cc54f8d8f7bcfa3b3f601f379b1278e 100644 (file)
@@ -27,8 +27,9 @@
     #include "wx/msgdlg.h"
     #include "wx/intl.h"
     #include "wx/dynarray.h"
-#   include "wx/wxchar.h"
-#   include "wx/icon.h"
+    #include "wx/wxchar.h"
+    #include "wx/icon.h"
+    #include "wx/timer.h"
 #endif
 
 #include "wx/log.h"
@@ -301,7 +302,7 @@ bool wxApp::RegisterWindowClasses(
     if (!::WinRegisterClass( vHab
                             ,wxCanvasClassName
                             ,wxWndProc
-                            ,CS_MOVENOTIFY | CS_SIZEREDRAW | CS_HITTEST | CS_SAVEBITS | CS_SYNCPAINT
+                            ,CS_MOVENOTIFY | CS_SIZEREDRAW | CS_HITTEST | CS_SAVEBITS | CS_SYNCPAINT | CS_CLIPCHILDREN
                             ,sizeof(ULONG)
                            ))
     {
@@ -764,7 +765,7 @@ bool wxApp::ProcessMessage(
     // We must relay Timer events to wxTimer's processing function
     //
     if (pMsg->msg == WM_TIMER)
-        wxTimerProc(NULL, 0, pMsg->mp1, 0);
+        wxTimerProc(NULL, 0, (int)pMsg->mp1, 0);
 
     //
     // For some composite controls (like a combobox), wndThis might be NULL
@@ -962,6 +963,8 @@ void wxExit()
     wxApp::CleanUp();
 } // end of wxExit
 
+static bool gs_inYield = FALSE;
+
 //
 // Yield to incoming messages
 //
@@ -976,6 +979,8 @@ bool wxYield()
     //
     wxLog::Suspend();
 
+    gs_inYield = TRUE;
+
     //
     // We want to go back to the main message loop
     // if we see a WM_QUIT. (?)
@@ -998,9 +1003,19 @@ bool wxYield()
     // Let the logs be flashed again
     //
     wxLog::Resume();
+    gs_inYield = FALSE;
     return TRUE;
 } // end of wxYield
 
+// Yield to incoming messages; but fail silently if recursion is detected.
+bool wxYieldIfNeeded()
+{
+    if (gs_inYield)
+        return FALSE;
+        
+    return wxYield();
+}
+
 wxIcon wxApp::GetStdIcon(
   int                               nWhich
 ) const