code: drawterm

Download patch

ref: 12ce9a3cf548a8a6ef57e42b2363ef5dcbb49c78
parent: 37ef30916cf30b47f92cf8f815caa23424263a5a
author: Russ Cox <rsc@swtch.com>
date: Tue Mar 7 23:26:14 EST 2006

windows unicode and scroll wheel

--- a/Make.win32
+++ b/Make.win32
@@ -10,7 +10,7 @@
 AS=$(MING)as
 RANLIB=$(MING)ranlib
 WINDRES=$(MING)windres
-CFLAGS=-Wall -Wno-missing-braces -I$(ROOT)/include -I$(ROOT) -I$(ROOT)/kern -c -D_X86_ -DIS_32 -DWINDOWS -O2
+CFLAGS=-Wall -Wno-missing-braces -I$(ROOT)/include -I$(ROOT) -I$(ROOT)/kern -c -D_X86_ -DIS_32 -DWINDOWS -DUNICODE -O2
 O=o
 FS=fs-win32
 IP=win32
--- a/gui-win32/screen.c
+++ b/gui-win32/screen.c
@@ -1,3 +1,4 @@
+#define _WIN32_WINNT 0x0500
 #include	<windows.h>
 
 #undef Rectangle
@@ -188,13 +189,13 @@
 	wc.hCursor = LoadCursor(NULL, IDC_ARROW);
 	wc.hbrBackground = GetStockObject(WHITE_BRUSH);
 	wc.lpszMenuName = 0;
-	wc.lpszClassName = "9pmgraphics";
+	wc.lpszClassName = L"9pmgraphics";
 	RegisterClass(&wc);
 
 	window = CreateWindowEx(
 		0,			/* extended style */
-		"9pmgraphics",		/* class */
-		"drawterm screen",		/* caption */
+		L"9pmgraphics",		/* class */
+		L"drawterm screen",		/* caption */
 		WS_OVERLAPPEDWINDOW,    /* style */
 		CW_USEDEFAULT,		/* init. x pos */
 		CW_USEDEFAULT,		/* init. y pos */
@@ -338,6 +339,11 @@
 			return 1;
 		}
 		return DefWindowProc(hwnd, msg, wparam, lparam);
+	case WM_MOUSEWHEEL:
+		if ((int)(wparam & 0xFFFF0000)>0)
+			b|=8;
+		else
+			b|=16;
 	case WM_MOUSEMOVE:
 	case WM_LBUTTONUP:
 	case WM_MBUTTONUP: