1 ///////////////////////////////////////////////////////////////////////////////
2 // Name:        wx/msw/apptbase.h
3 // Purpose:     declaration of wxAppTraits for MSW
4 // Author:      Vadim Zeitlin
5 // Modified by:
6 // Created:     22.06.2003
7 // RCS-ID:      $Id: apptbase.h 40599 2006-08-13 21:00:32Z VZ $
8 // Copyright:   (c) 2003 Vadim Zeitlin <vadim@wxwidgets.org>
9 // Licence:     wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11 
12 #ifndef _WX_MSW_APPTBASE_H_
13 #define _WX_MSW_APPTBASE_H_
14 
15 // ----------------------------------------------------------------------------
16 // wxAppTraits: the MSW version adds extra hooks needed by MSW-only code
17 // ----------------------------------------------------------------------------
18 
19 class WXDLLIMPEXP_BASE wxAppTraits : public wxAppTraitsBase
20 {
21 public:
22     // wxExecute() support methods
23     // ---------------------------
24 
25     // called before starting to wait for the child termination, may return
26     // some opaque data which will be passed later to AfterChildWaitLoop()
27     virtual void *BeforeChildWaitLoop() = 0;
28 
29     // process pending Windows messages, even in console app
30     virtual void AlwaysYield() = 0;
31 
32     // called after starting to wait for the child termination, the parameter
33     // is the return value of BeforeChildWaitLoop()
34     virtual void AfterChildWaitLoop(void *data) = 0;
35 
36 
37     // wxThread helpers
38     // ----------------
39 
40     // process a message while waiting for a(nother) thread, should return
41     // false if and only if we have to exit the application
42     virtual bool DoMessageFromThreadWait() = 0;
43 };
44 
45 #endif // _WX_MSW_APPTBASE_H_
46 
47