1 /////////////////////////////////////////////////////////////////////////////// 
   2 // Name:        motif/gsockmot.cpp 
   3 // Purpose:     implementation of wxMotif-specific socket event handling 
   4 // Author:      Guilhem Lavaux, Vadim Zeitlin 
   7 // Copyright:   (c) 1999, 2007 wxWidgets dev team 
   8 // Licence:     wxWindows licence 
   9 /////////////////////////////////////////////////////////////////////////////// 
  11 // For compilers that support precompilation, includes "wx.h". 
  12 #include "wx/wxprec.h" 
  16 #include <X11/Intrinsic.h>      // XtAppAdd/RemoveInput() 
  17 #include "wx/motif/private.h"   // wxGetAppContext() 
  18 #include "wx/gsocket.h" 
  19 #include "wx/apptrait.h" 
  23 static void _GSocket_Motif_Input(XtPointer data
, int *WXUNUSED(fid
), 
  24                                  XtInputId 
*WXUNUSED(id
)) 
  26     GSocket 
*socket 
= (GSocket 
*)data
; 
  28     socket
->Detected_Read(); 
  31 static void _GSocket_Motif_Output(XtPointer data
, int *WXUNUSED(fid
), 
  32                                   XtInputId 
*WXUNUSED(id
)) 
  34     GSocket 
*socket 
= (GSocket 
*)data
; 
  36     socket
->Detected_Write(); 
  41 class MotifSocketManager 
: public GSocketInputBasedManager
 
  44     virtual int AddInput(GSocket 
*socket
, SocketDir d
) 
  50                     (XtPointer
)(d 
== FD_OUTPUT 
? XtInputWriteMask
 
  52                     d 
== FD_OUTPUT 
? _GSocket_Motif_Output
 
  53                                    : _GSocket_Motif_Input
, 
  58     virtual void RemoveInput(int fd
) 
  64 GSocketManager 
*wxGUIAppTraits::GetSocketManager() 
  66     static MotifSocketManager s_manager
; 
  70 #endif // wxUSE_SOCKETS