MCPcopy Create free account
hub / github.com/NetHack/NetHack / NHMessageWndProc

Function NHMessageWndProc

outdated/sys/wince/mhmsgwnd.c:113–195  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

111}
112
113LRESULT CALLBACK
114NHMessageWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
115{
116 switch (message) {
117 case WM_CREATE:
118 onCreate(hWnd, wParam, lParam);
119 break;
120
121 case WM_MSNH_COMMAND:
122 onMSNHCommand(hWnd, wParam, lParam);
123 break;
124
125 case WM_PAINT:
126 onPaint(hWnd);
127 break;
128
129 case WM_SETFOCUS:
130 SetFocus(GetNHApp()->hMainWnd);
131 break;
132
133#ifndef MSG_WRAP_TEXT
134 case WM_HSCROLL:
135 onMSNH_HScroll(hWnd, wParam, lParam);
136 break;
137#endif
138
139 case WM_VSCROLL:
140 onMSNH_VScroll(hWnd, wParam, lParam);
141 break;
142
143 case WM_DESTROY: {
144 PNHMessageWindow data;
145 data = (PNHMessageWindow) GetWindowLong(hWnd, GWL_USERDATA);
146 free(data);
147 SetWindowLong(hWnd, GWL_USERDATA, (LONG) 0);
148 } break;
149
150 case WM_SIZE: {
151 SCROLLINFO si;
152 int xNewSize;
153 int yNewSize;
154 PNHMessageWindow data;
155
156 data = (PNHMessageWindow) GetWindowLong(hWnd, GWL_USERDATA);
157
158 xNewSize = LOWORD(lParam);
159 yNewSize = HIWORD(lParam);
160
161 if (xNewSize > 0 || yNewSize > 0) {
162#ifndef MSG_WRAP_TEXT
163 data->xPage = xNewSize / data->xChar;
164 data->xMax = max(0, (int) (1 + data->max_text - data->xPage));
165 data->xPos = min(data->xPos, data->xMax);
166
167 ZeroMemory(&si, sizeof(si));
168 si.cbSize = sizeof(si);
169 si.fMask = SIF_RANGE | SIF_PAGE | SIF_POS;
170 si.nMin = 0;

Callers

nothing calls this directly

Calls 6

onCreateFunction · 0.70
onMSNHCommandFunction · 0.70
onPaintFunction · 0.70
GetNHAppFunction · 0.70
onMSNH_HScrollFunction · 0.70
onMSNH_VScrollFunction · 0.70

Tested by

no test coverage detected