]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/apptrait.h
Compilation fix (CreateTimerImpl is taken from timerunx.cpp, so not inline).
[wxWidgets.git] / include / wx / apptrait.h
index 322b047c8eab49ebf57c0111715022baedbf6292..dc1d1785f94eb01d9bc747b4716c2fc45e98fe9d 100644 (file)
@@ -30,7 +30,7 @@ class WXDLLIMPEXP_FWD_BASE wxString;
 class WXDLLIMPEXP_FWD_BASE wxTimer;
 class WXDLLIMPEXP_FWD_BASE wxTimerImpl;
 
-class GSocketGUIFunctionsTable;
+class GSocketManager;
 
 
 // ----------------------------------------------------------------------------
@@ -116,13 +116,9 @@ public:
     virtual void RemoveFromPendingDelete(wxObject *object) = 0;
 
 #if wxUSE_SOCKETS
-    // return table of GUI callbacks for GSocket code or NULL in wxBase. This
-    // is needed because networking classes are in their own library and so
-    // they can't directly call GUI functions (the same net library can be
-    // used in both GUI and base apps). To complicate it further, GUI library
-    // ("wxCore") doesn't depend on networking library and so only a functions
-    // table can be passed around
-    virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable() = 0;
+    // return socket manager: this is usually different for console and GUI
+    // applications (although some ports use the same implementation for both)
+    virtual GSocketManager *GetSocketManager() = 0;
 #endif
 
     // create a new, port specific, instance of the event loop used by wxApp
@@ -133,6 +129,11 @@ public:
     virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer) = 0;
 #endif
 
+#if wxUSE_THREADS
+    virtual void MutexGuiEnter();
+    virtual void MutexGuiLeave();
+#endif
+
     // functions returning port-specific information
     // ------------------------------------------------------------------------
 
@@ -140,7 +141,7 @@ public:
     // runtime (not compile-time) version.
     // returns wxPORT_BASE for console applications and one of the remaining
     // wxPORT_* values for GUI applications.
-    virtual wxPortId GetToolkitVersion(int *majVer, int *minVer) const = 0;
+    virtual wxPortId GetToolkitVersion(int *majVer = NULL, int *minVer = NULL) const = 0;
 
     // return true if the port is using wxUniversal for the GUI, false if not
     virtual bool IsUsingUniversalWidgets() const = 0;
@@ -183,8 +184,6 @@ protected:
     #include "wx/msw/apptbase.h"
 #elif defined(__UNIX__) && !defined(__EMX__)
     #include "wx/unix/apptbase.h"
-#elif defined(__WXMAC__)
-    #include "wx/mac/apptbase.h"
 #elif defined(__OS2__)
     #include "wx/os2/apptbase.h"
 #else // no platform-specific methods to add to wxAppTraits
@@ -217,9 +216,6 @@ public:
     virtual wxFontMapper *CreateFontMapper();
 #endif // wxUSE_FONTMAP
     virtual wxRendererNative *CreateRenderer();
-#if wxUSE_SOCKETS
-    virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable();
-#endif
 
 #ifdef __WXDEBUG__
     virtual bool ShowAssertDialog(const wxString& msg);
@@ -230,7 +226,7 @@ public:
     virtual void RemoveFromPendingDelete(wxObject *object);
 
     // the GetToolkitVersion for console application is always the same
-    virtual wxPortId GetToolkitVersion(int *verMaj, int *verMin) const
+    virtual wxPortId GetToolkitVersion(int *verMaj = NULL, int *verMin = NULL) const
     {
         // no toolkits (wxBase is for console applications without GUI support)
         // NB: zero means "no toolkit", -1 means "not initialized yet"
@@ -261,9 +257,6 @@ public:
     virtual wxFontMapper *CreateFontMapper();
 #endif // wxUSE_FONTMAP
     virtual wxRendererNative *CreateRenderer();
-#if wxUSE_SOCKETS
-    virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable();
-#endif
 
 #ifdef __WXDEBUG__
     virtual bool ShowAssertDialog(const wxString& msg);
@@ -300,8 +293,6 @@ public:
     #include "wx/os2/apptrait.h"
 #elif defined(__UNIX__)
     #include "wx/unix/apptrait.h"
-#elif defined(__WXMAC__)
-    #include "wx/mac/apptrait.h"
 #elif defined(__DOS__)
     #include "wx/msdos/apptrait.h"
 #else