as GSocket) which is a base class with various wxSocketImplXXX implementations provided by different wxSocketManagers. Share more code between ports (still not finished). Refactor some code inside wxSocketImpl itself to be less redundant and fixed a couple of minor bugs in the process. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			56 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /////////////////////////////////////////////////////////////////////////////
 | |
| // Name:        wx/unix/app.h
 | |
| // Purpose:     wxAppConsole implementation for Unix
 | |
| // Author:      Lukasz Michalski
 | |
| // Created:     28/01/2005
 | |
| // RCS-ID:      $Id$
 | |
| // Copyright:   (c) Lukasz Michalski
 | |
| // Licence:     wxWindows licence
 | |
| /////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
| //Ensure that sigset_t is being defined
 | |
| #include <signal.h>
 | |
| 
 | |
| // wxApp subclass implementing event processing for console applications
 | |
| class WXDLLIMPEXP_BASE wxAppConsole : public wxAppConsoleBase
 | |
| {
 | |
| public:
 | |
|     // override base class initialization
 | |
|     virtual bool Initialize(int& argc, wxChar** argv);
 | |
| 
 | |
| 
 | |
|     // Unix-specific: Unix signal handling
 | |
|     // -----------------------------------
 | |
| 
 | |
|     // type of the function which can be registered as signal handler: notice
 | |
|     // that it isn't really a signal handler, i.e. it's not subject to the
 | |
|     // usual signal handlers constraints, because it is called later from
 | |
|     // CheckSignal() and not when the signal really occurs
 | |
|     typedef void (*SignalHandler)(int);
 | |
| 
 | |
|     // Set signal handler for the given signal, SIG_DFL or SIG_IGN can be used
 | |
|     // instead of a function pointer
 | |
|     //
 | |
|     // Return true if handler was installed, false on error
 | |
|     bool SetSignalHandler(int signal, SignalHandler handler);
 | |
| 
 | |
|     // Check if any Unix signals arrived since the last call and execute
 | |
|     // handlers for them
 | |
|     void CheckSignal();
 | |
| 
 | |
| private:
 | |
|     // signal handler set up by SetSignalHandler() for all signals we handle,
 | |
|     // it just adds the signal to m_signalsCaught -- the real processing is
 | |
|     // done later, when CheckSignal() is called
 | |
|     static void HandleSignal(int signal);
 | |
| 
 | |
| 
 | |
|     // signals for which HandleSignal() had been called (reset from
 | |
|     // CheckSignal())
 | |
|     sigset_t m_signalsCaught;
 | |
| 
 | |
|     // the signal handlers
 | |
|     WX_DECLARE_HASH_MAP(int, SignalHandler, wxIntegerHash, wxIntegerEqual, SignalHandlerHash);
 | |
|     SignalHandlerHash m_signalHandlerHash;
 | |
| };
 |