]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/os2/app.h
   1 ///////////////////////////////////////////////////////////////////////////// 
   3 // Purpose:     wxApp class 
   4 // Author:      David Webster 
   8 // Copyright:   (c) David Webster 
   9 // Licence:     wxWindows licence 
  10 ///////////////////////////////////////////////////////////////////////////// 
  17 #include <sys/ioctl.h> 
  18 #include <sys/select.h> 
  23 #include <sys/types.h> 
  39 class WXDLLEXPORT wxFrame
; 
  40 class WXDLLEXPORT wxWindow
; 
  41 class WXDLLEXPORT wxApp
; 
  42 class WXDLLEXPORT wxKeyEvent
; 
  43 class WXDLLEXPORT wxLog
; 
  45 WXDLLEXPORT_DATA(extern wxApp
*) wxTheApp
; 
  46 WXDLLEXPORT_DATA(extern HAB
)    vHabmain
; 
  48 // Force an exit from main loop 
  49 void WXDLLEXPORT 
wxExit(void); 
  51 // Yield to other apps/messages 
  52 bool WXDLLEXPORT 
wxYield(void); 
  54 extern MRESULT EXPENTRY 
wxWndProc( HWND
 
  61 // Represents the application. Derive OnInit and declare 
  62 // a new App object to start application 
  63 class WXDLLEXPORT wxApp 
: public wxAppBase
 
  65     DECLARE_DYNAMIC_CLASS(wxApp
) 
  71     virtual bool OnInitGui(void); 
  73     // override base class (pure) virtuals 
  74     virtual int  MainLoop(void); 
  75     virtual void ExitMainLoop(void); 
  76     virtual bool Initialized(void); 
  77     virtual bool Pending(void) ; 
  78     virtual void Dispatch(void); 
  82     virtual bool Yield(bool onlyIfNeeded 
= FALSE
); 
  83     virtual void WakeUpIdle(void); 
  85     virtual void SetPrintMode(int mode
) { m_nPrintMode 
= mode
; } 
  86     virtual int  GetPrintMode(void) const { return m_nPrintMode
; } 
  88     // implementation only 
  89     void OnIdle(wxIdleEvent
& rEvent
); 
  90     void OnEndSession(wxCloseEvent
& rEvent
); 
  91     void OnQueryEndSession(wxCloseEvent
& rEvent
); 
  93     int AddSocketHandler(int handle
, int mask
, 
  94                          void (*callback
)(void*), void * gsock
); 
  95     void RemoveSocketHandler(int handle
); 
 100     int                             m_nPrintMode
; // wxPRINT_WINDOWS, wxPRINT_POSTSCRIPT 
 103     // PM-specific wxApp definitions */ 
 106     int                             m_maxSocketHandles
; 
 108     int                             m_lastUsedHandle
; 
 111     void*                           m_sockCallbackInfo
; 
 116     virtual bool  Initialize(int& argc
, wxChar 
**argv
); 
 117     virtual void  CleanUp(void); 
 119     static bool  RegisterWindowClasses(HAB vHab
); 
 120     virtual void DoMessage(WXMSG 
*pMsg
); 
 121     virtual bool DoMessage(void); 
 122     virtual bool ProcessMessage(WXMSG
* pMsg
); 
 131     DECLARE_EVENT_TABLE() 
 134 int WXDLLEXPORT 
wxEntry( int argc
, char *argv
[] );