X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ee0995b09b0f91ceeaff41129ec7228d389d33ff..4e15d1caa03346c126015019c1fdf093033ef40b:/src/gtk1/sockgtk.cpp?ds=inline diff --git a/src/gtk1/sockgtk.cpp b/src/gtk1/sockgtk.cpp index c8d449cfd8..e5b0861e86 100644 --- a/src/gtk1/sockgtk.cpp +++ b/src/gtk1/sockgtk.cpp @@ -1,26 +1,30 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: gtk/gsockgtk.cpp +// Name: src/gtk1/sockgtk.cpp // Purpose: implementation of wxGTK-specific socket event handling // Author: Guilhem Lavaux, Vadim Zeitlin // Created: 1999 // RCS-ID: $Id$ // Copyright: (c) 1999, 2007 wxWidgets dev team +// (c) 2009 Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// // For compilers that support precompilation, includes "wx.h". + +#if defined( __VMS ) && defined( __ia64 ) +// Work around for a bug in the C++ compiler on OpenVMS IA64 +# include +#endif + #include "wx/wxprec.h" #if wxUSE_SOCKETS -#include -#include - #include #include -#include "wx/private/socket.h" #include "wx/apptrait.h" +#include "wx/private/fdiomanager.h" extern "C" { static @@ -28,7 +32,7 @@ void wxSocket_GDK_Input(gpointer data, gint WXUNUSED(source), GdkInputCondition condition) { - wxSocketImplUnix * const handler = static_cast(data); + wxFDIOHandler * const handler = static_cast(data); if ( condition & GDK_INPUT_READ ) { @@ -37,7 +41,7 @@ void wxSocket_GDK_Input(gpointer data, // we could have lost connection while reading in which case we // shouldn't call OnWriteWaiting() as the socket is now closed and it // would assert - if ( handler->m_fd == INVALID_SOCKET ) + if ( !handler->IsOk() ) return; } @@ -46,29 +50,30 @@ void wxSocket_GDK_Input(gpointer data, } } -class GTKSocketManager : public wxSocketInputBasedManager +class GTKFDIOManager : public wxFDIOManager { public: - virtual int AddInput(wxSocketImplUnix *handler, int fd, SocketDir d) + virtual int AddInput(wxFDIOHandler *handler, int fd, Direction d) { return gdk_input_add ( fd, - d == FD_OUTPUT ? GDK_INPUT_WRITE : GDK_INPUT_READ, + d == OUTPUT ? GDK_INPUT_WRITE : GDK_INPUT_READ, wxSocket_GDK_Input, handler ); } - virtual void RemoveInput(int fd) + virtual void + RemoveInput(wxFDIOHandler* WXUNUSED(handler), int fd, Direction WXUNUSED(d)) { gdk_input_remove(fd); } }; -wxSocketManager *wxGUIAppTraits::GetSocketManager() +wxFDIOManager *wxGUIAppTraits::GetFDIOManager() { - static GTKSocketManager s_manager; + static GTKFDIOManager s_manager; return &s_manager; }