X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6c9a19aabab3a878b565e6c2a5f2a3824277c4dc..18d491685c8e13a5536f2f9dd6c8041c110a76d9:/src/msw/utils.cpp?ds=sidebyside diff --git a/src/msw/utils.cpp b/src/msw/utils.cpp index 30e41428af..0b2827e0e7 100644 --- a/src/msw/utils.cpp +++ b/src/msw/utils.cpp @@ -56,7 +56,7 @@ #endif #endif //GNUWIN32 -#if defined(__CYGWIN__) && !defined(__TWIN32__) +#if defined(__CYGWIN__) #include #include #include // 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; }