]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/unix/private/sockunix.h
added .c_str() to wxStrlcpy() calls to fix wxUSE_STL build (closes #10252)
[wxWidgets.git] / include / wx / unix / private / sockunix.h
index 26b7f90d82f5653bb46745f7ad224e3790b01b8c..dd83004505b230fb30f91a9aa1a48f6762fa64fe 100644 (file)
@@ -27,6 +27,7 @@ public:
         m_fds[1] = -1;
 
         m_use_events = false;
+        m_enabledCallbacks = 0;
     }
 
     virtual void Shutdown();
@@ -42,6 +43,14 @@ public:
     virtual void OnWriteWaiting();
     virtual void OnExceptionWaiting();
 
+    // Unix-specific functions
+    bool HasAnyEnabledCallbacks() const { return m_enabledCallbacks != 0; }
+    void EnableCallback(wxFDIODispatcherEntryFlags flag)
+        { m_enabledCallbacks |= flag; }
+    void DisableCallback(wxFDIODispatcherEntryFlags flag)
+        { m_enabledCallbacks &= ~flag; }
+    int GetEnabledCallbacks() const { return m_enabledCallbacks; }
+
 private:
     virtual wxSocketError DoHandleConnect(int ret);
     virtual void DoClose()
@@ -99,6 +108,7 @@ private:
     int Send_Stream(const char *buffer, int size);
     int Send_Dgram(const char *buffer, int size);
 
+
 protected:
     // true if socket should fire events
     bool m_use_events;
@@ -107,6 +117,13 @@ protected:
     // with the socket
     int m_fds[2];
 
+    // the events which are currently enabled for this socket, combination of
+    // wxFDIO_INPUT and wxFDIO_OUTPUT values
+    //
+    // TODO: this overlaps with m_detected but the semantics of the latter are
+    //       very unclear so I don't dare to remove it right now
+    int m_enabledCallbacks;
+
 private:
     // notify the associated wxSocket about a change in socket state and shut
     // down the socket if the event is wxSOCKET_LOST
@@ -124,12 +141,6 @@ public:
     virtual bool OnInit() { return true; }
     virtual void OnExit() { }
 
-    // allocate/free the storage we need
-    virtual wxSocketImpl *CreateSocket(wxSocketBase& wxsocket)
-    {
-        return new wxSocketImplUnix(wxsocket);
-    }
-
 protected:
     // identifies either input or output direction
     //