]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/utils.cpp
added a few #ifdefs needed to build a smaller library (patch 751523)
[wxWidgets.git] / src / msw / utils.cpp
index 30e41428af6c3e724ed8885b461bcdf49edeeefb..0b2827e0e798051b7bff6bc53221b70bb4e11ab0 100644 (file)
@@ -56,7 +56,7 @@
     #endif
 #endif  //GNUWIN32
 
-#if defined(__CYGWIN__) && !defined(__TWIN32__)
+#if defined(__CYGWIN__)
     #include <sys/unistd.h>
     #include <sys/stat.h>
     #include <sys/cygwin.h> // for cygwin_conv_to_full_win32_path()
@@ -147,7 +147,7 @@ static const wxChar eUSERID[]    = wxT("UserId");
 // Get hostname only (without domain name)
 bool wxGetHostName(wxChar *buf, int maxSize)
 {
-#if defined(__WIN32__) && !defined(__TWIN32__) && !defined(__WXMICROWIN__)
+#if defined(__WIN32__) && !defined(__WXMICROWIN__)
     DWORD nSize = maxSize;
     if ( !::GetComputerName(buf, &nSize) )
     {
@@ -173,13 +173,14 @@ bool wxGetHostName(wxChar *buf, int maxSize)
 // get full hostname (with domain name if possible)
 bool wxGetFullHostName(wxChar *buf, int maxSize)
 {
-#if defined(__WIN32__) && !defined(__TWIN32__) && !defined(__WXMICROWIN__) && ! (defined(__GNUWIN32__) && !defined(__MINGW32__))
+#if defined(__WIN32__) && !defined(__WXMICROWIN__) && ! (defined(__GNUWIN32__) && !defined(__MINGW32__))
     // TODO should use GetComputerNameEx() when available
 
     // the idea is that if someone had set wxUSE_SOCKETS to 0 the code
     // shouldn't use winsock.dll (a.k.a. ws2_32.dll) at all so only use this
     // code if we link with it anyhow
 #if wxUSE_SOCKETS
+
     WSADATA wsa;
     if ( WSAStartup(MAKEWORD(1, 1), &wsa) == 0 )
     {
@@ -215,6 +216,7 @@ bool wxGetFullHostName(wxChar *buf, int maxSize)
             return TRUE;
         }
     }
+
 #endif // wxUSE_SOCKETS
 
 #endif // Win32
@@ -225,7 +227,7 @@ bool wxGetFullHostName(wxChar *buf, int maxSize)
 // Get user ID e.g. jacs
 bool wxGetUserId(wxChar *buf, int maxSize)
 {
-#if defined(__WIN32__) && !defined(__win32s__) && !defined(__TWIN32__) && !defined(__WXMICROWIN__)
+#if defined(__WIN32__) && !defined(__win32s__) && !defined(__WXMICROWIN__)
     DWORD nSize = maxSize;
     if ( ::GetUserName(buf, &nSize) == 0 )
     {
@@ -364,7 +366,7 @@ const wxChar* wxGetHomeDir(wxString *pstr)
 {
   wxString& strDir = *pstr;
 
-  #if defined(__UNIX__) && !defined(__TWIN32__)
+  #if defined(__UNIX__)
     const wxChar *szHome = wxGetenv("HOME");
     if ( szHome == NULL ) {
       // we're homeless...
@@ -652,8 +654,6 @@ bool wxSetEnv(const wxString& var, const wxChar *value)
 // process management
 // ----------------------------------------------------------------------------
 
-#ifdef __WIN32__
-
 // structure used to pass parameters from wxKill() to wxEnumFindByPidProc()
 struct wxFindByPidParams
 {
@@ -689,11 +689,8 @@ BOOL CALLBACK wxEnumFindByPidProc(HWND hwnd, LPARAM lParam)
     return TRUE;
 }
 
-#endif // __WIN32__
-
 int wxKill(long pid, wxSignal sig, wxKillError *krc)
 {
-#ifdef __WIN32__
     // get the process handle to operate on
     HANDLE hProcess = ::OpenProcess(SYNCHRONIZE |
                                     PROCESS_TERMINATE |
@@ -830,25 +827,19 @@ int wxKill(long pid, wxSignal sig, wxKillError *krc)
 
     // the return code is the same as from Unix kill(): 0 if killed
     // successfully or -1 on error
-    if ( sig == wxSIGNONE )
-    {
-        if ( ok && rc == STILL_ACTIVE )
-        {
-            // there is such process => success
-            return 0;
-        }
-    }
-    else // not SIGNONE
+    //
+    // be careful to interpret rc correctly: for wxSIGNONE we return success if
+    // the process exists, for all the other sig values -- if it doesn't
+    if ( ok &&
+            ((sig == wxSIGNONE) == (rc == STILL_ACTIVE)) )
     {
-        if ( ok && rc != STILL_ACTIVE )
+        if ( krc )
         {
-            // killed => success
-            return 0;
+            *krc = wxKILL_OK;
         }
+
+        return 0;
     }
-#else // Win16
-    wxFAIL_MSG( _T("not implemented") );
-#endif // Win32/Win16
 
     // error
     return -1;
@@ -943,7 +934,7 @@ bool wxShutdown(wxShutdownFlags wFlags)
 // Get free memory in bytes, or -1 if cannot determine amount (e.g. on UNIX)
 long wxGetFreeMemory()
 {
-#if defined(__WIN32__) && !defined(__BORLANDC__) && !defined(__TWIN32__)
+#if defined(__WIN32__) && !defined(__BORLANDC__)
     MEMORYSTATUS memStatus;
     memStatus.dwLength = sizeof(MEMORYSTATUS);
     GlobalMemoryStatus(&memStatus);
@@ -1020,7 +1011,7 @@ wxString wxGetOsDescription()
 
 int wxGetOsVersion(int *majorVsn, int *minorVsn)
 {
-#if defined(__WIN32__) && !defined(__SC__)
+#if defined(__WIN32__) 
     static int ver = -1, major = -1, minor = -1;
 
     if ( ver == -1 )
@@ -1325,7 +1316,11 @@ static HCURSOR gs_wxBusyCursor = 0;     // new, busy cursor
 static HCURSOR gs_wxBusyCursorOld = 0;  // old cursor
 static int gs_wxBusyCursorCount = 0;
 
+#ifdef __DIGITALMARS__
+extern "C" HCURSOR wxGetCurrentBusyCursor()
+#else
 extern HCURSOR wxGetCurrentBusyCursor()
+#endif
 {
     return gs_wxBusyCursor;
 }