0029169: Configuration - fix compilation with undefined UNICODE on Windows
authorkgv <kgv@opencascade.com>
Sat, 30 Sep 2017 16:52:10 +0000 (19:52 +0300)
committerbugmaster <bugmaster@opencascade.com>
Fri, 6 Oct 2017 07:27:57 +0000 (10:27 +0300)
Eliminated usage of TEXT macros, usage of OSVERSIONINFO instead of OSVERSIONINFOW.
LoadIcon/LoadCursor are now used instead of LoadIconW/LoadCursorW
when passing macros to standard resources (which depend on UNICODE flag).

src/Draw/init.cxx
src/OSD/OSD_Host.cxx
src/ViewerTest/ViewerTest_ViewerCommands.cxx
src/WNT/WNT_WClass.cxx

index 34d2176..7cb6fc4 100644 (file)
@@ -42,15 +42,15 @@ BOOL RegisterAppClass(HINSTANCE hInstance)
   // Parametres communs aux classes
   //-----
   wndClass.style         = CS_HREDRAW | CS_VREDRAW | CS_CLASSDC;
-  wndClass.cbClsExtra    = 0;  
-  wndClass.hCursor       = LoadCursorW (NULL, IDC_ARROW);
+  wndClass.cbClsExtra    = 0;
+  wndClass.hCursor       = LoadCursor (NULL, IDC_ARROW);
   wndClass.hInstance     = hInstance;
 
   // Enregistrement de la fenetre principale
   //-----
   wndClass.cbWndExtra    = sizeof(void*);
   wndClass.lpfnWndProc   = (WNDPROC)WndProc;
-  wndClass.hIcon         = (HICON )LoadIconW (hInstance, MAKEINTRESOURCE(IDI_ICON1));
+  wndClass.hIcon         = LoadIconW (hInstance, MAKEINTRESOURCEW(IDI_ICON1));
   wndClass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
   wndClass.lpszMenuName  = MAKEINTRESOURCEW(APPMENU);
   wndClass.lpszClassName = APPCLASS;
index 91fd43d..b4fd1df 100644 (file)
@@ -211,7 +211,8 @@ OSD_Host :: OSD_Host () {
  if ( !fInit ) {
 
   nSize                         = MAX_COMPUTERNAME_LENGTH + 1;
-  osVerInfo.dwOSVersionInfoSize = sizeof ( OSVERSIONINFO );
+  ZeroMemory (&osVerInfo, sizeof(OSVERSIONINFOW));
+  osVerInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFOW);
 
   ZeroMemory (&ms, sizeof(ms));
   ZeroMemory (szHostName, sizeof(char) * (MAX_COMPUTERNAME_LENGTH + 1));
@@ -262,11 +263,12 @@ OSD_Host :: OSD_Host () {
   
    hostName  = szHostName;
    interAddr = Standard_CString ( hostAddr );
-   wsprintf (
-    osVerInfo.szCSDVersion, TEXT( "Windows NT Version %d.%d" ),
-    osVerInfo.dwMajorVersion, osVerInfo.dwMinorVersion
-   );
-   version = osVerInfo.szCSDVersion;
+   TCollection_AsciiString aVersion = TCollection_AsciiString("Windows NT Version ") + (int )osVerInfo.dwMajorVersion + "." + (int )osVerInfo.dwMinorVersion;
+   if (*osVerInfo.szCSDVersion != L'\0')
+   {
+     aVersion += TCollection_AsciiString(" ") + TCollection_AsciiString (osVerInfo.szCSDVersion);
+   }
+   version = aVersion;
 
    fInit = TRUE;
   
index e603fea..1f12147 100644 (file)
@@ -262,7 +262,7 @@ const Handle(Standard_Transient)& ViewerTest::WClass()
   {
     theWClass = new WNT_WClass ("GW3D_Class", (Standard_Address )AdvViewerWindowProc,
                                 CS_VREDRAW | CS_HREDRAW, 0, 0,
-                                ::LoadCursorW (NULL, IDC_ARROW));
+                                ::LoadCursor (NULL, IDC_ARROW));
   }
 #endif
   return theWClass;
index 7898f9c..d35d7c6 100644 (file)
@@ -48,8 +48,8 @@ WNT_WClass::WNT_WClass (const TCollection_AsciiString& theClassName,
   aWinClass.cbClsExtra    = theClassExtra;
   aWinClass.cbWndExtra    = theWindowExtra;
   aWinClass.hInstance     = (HINSTANCE )myAppInstance;
-  aWinClass.hIcon         = theIcon   != NULL ? (HICON   )theIcon   : LoadIconW   (NULL, IDI_APPLICATION);
-  aWinClass.hCursor       = theCursor != NULL ? (HCURSOR )theCursor : LoadCursorW (NULL, IDC_NO);
+  aWinClass.hIcon         = theIcon   != NULL ? (HICON   )theIcon   : LoadIcon   (NULL, IDI_APPLICATION);
+  aWinClass.hCursor       = theCursor != NULL ? (HCURSOR )theCursor : LoadCursor (NULL, IDC_NO);
   aWinClass.hbrBackground = 0;
   aWinClass.lpszMenuName  = !aMenuNameW.IsEmpty() ? aMenuNameW.ToWideString() : NULL;
   aWinClass.lpszClassName = aClassNameW.ToWideString();