Added wxAppTraits::CreateGSocket() as well as implementations for wxBase and
wxGUI. This method should return a new derived instance of GSocketBSD which implements the EventLoop_ pure virtual functions appropriately. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -29,6 +29,9 @@ extern "C"
|
|||||||
struct GSocketGUIFunctionsTable;
|
struct GSocketGUIFunctionsTable;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FIXME: Eventually unify Mac OS 9
|
||||||
|
class GSocketBSD;
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// toolkit information
|
// toolkit information
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -113,6 +116,10 @@ public:
|
|||||||
#if wxUSE_SOCKETS
|
#if wxUSE_SOCKETS
|
||||||
// return table of GUI callbacks for GSocket code or NULL in wxBase
|
// return table of GUI callbacks for GSocket code or NULL in wxBase
|
||||||
virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable() = 0;
|
virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable() = 0;
|
||||||
|
|
||||||
|
// return a new GSocket with the EventLoop_* stuff implemented.
|
||||||
|
// or at least stubbed (i.e. wxBase)
|
||||||
|
virtual GSocketBSD* CreateGSocket() = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
@@ -168,6 +175,7 @@ public:
|
|||||||
virtual wxRendererNative *CreateRenderer();
|
virtual wxRendererNative *CreateRenderer();
|
||||||
#if wxUSE_SOCKETS
|
#if wxUSE_SOCKETS
|
||||||
virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable();
|
virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable();
|
||||||
|
virtual GSocketBSD* CreateGSocket();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __WXDEBUG__
|
#ifdef __WXDEBUG__
|
||||||
@@ -198,6 +206,9 @@ public:
|
|||||||
virtual wxRendererNative *CreateRenderer();
|
virtual wxRendererNative *CreateRenderer();
|
||||||
#if wxUSE_SOCKETS
|
#if wxUSE_SOCKETS
|
||||||
virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable();
|
virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable();
|
||||||
|
// return a new GSocket with the EventLoop_* stuff implemented.
|
||||||
|
// TODO: Remove this because each GUI should implement it separately
|
||||||
|
virtual GSocketBSD* CreateGSocket();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __WXDEBUG__
|
#ifdef __WXDEBUG__
|
||||||
|
@@ -53,6 +53,10 @@
|
|||||||
#include "wx/fontmap.h"
|
#include "wx/fontmap.h"
|
||||||
#endif // wxUSE_FONTMAP
|
#endif // wxUSE_FONTMAP
|
||||||
|
|
||||||
|
#if wxUSE_SOCKETS
|
||||||
|
#include "wx/gsocket.h"
|
||||||
|
#endif // wxUSE_SOCKETS
|
||||||
|
|
||||||
#if defined(__WXMAC__)
|
#if defined(__WXMAC__)
|
||||||
// VZ: MacTypes.h is enough under Mac OS X (where I could test it) but
|
// VZ: MacTypes.h is enough under Mac OS X (where I could test it) but
|
||||||
// I don't know which headers are needed under earlier systems so
|
// I don't know which headers are needed under earlier systems so
|
||||||
@@ -475,6 +479,16 @@ GSocketGUIFunctionsTable* wxConsoleAppTraitsBase::GetSocketGUIFunctionsTable()
|
|||||||
{
|
{
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: Use a different class that only stubs out the event loop functions
|
||||||
|
GSocketBSD* wxConsoleAppTraitsBase::CreateGSocket()
|
||||||
|
{
|
||||||
|
#ifdef wxUSE_GSOCKET_CPLUSPLUS
|
||||||
|
return new GSocketBSDGUIShim();
|
||||||
|
#else
|
||||||
|
return NULL;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -605,5 +605,14 @@ GSocketGUIFunctionsTable* wxGUIAppTraitsBase::GetSocketGUIFunctionsTable()
|
|||||||
#endif // !__WXMAC__ || __DARWIN__
|
#endif // !__WXMAC__ || __DARWIN__
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GSocketBSD* wxGUIAppTraitsBase::CreateGSocket()
|
||||||
|
{
|
||||||
|
#ifdef wxUSE_GSOCKET_CPLUSPLUS
|
||||||
|
return new GSocketBSDGUIShim();
|
||||||
|
#else
|
||||||
|
return NULL;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user