MCPcopy Create free account
hub / github.com/ClassiCube/ClassiCube / ProcessConsoleEvents

Function ProcessConsoleEvents

src/Window_Terminal.c:259–282  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

257}
258
259static void ProcessConsoleEvents(float delta) {
260 DWORD events = 0;
261 GetNumberOfConsoleInputEvents(hStdin, &events);
262 if (!events) return;
263
264 INPUT_RECORD buffer[128];
265 if (!ReadConsoleInput(hStdin, buffer, 128, &events)) return;
266
267 for (int i = 0; i < events; i++)
268 {
269 switch (buffer[i].EventType)
270 {
271 case KEY_EVENT:
272 KeyEventProc(buffer[i].Event.KeyEvent);
273 break;
274 case MOUSE_EVENT:
275 MouseEventProc(buffer[i].Event.MouseEvent);
276 break;
277 case WINDOW_BUFFER_SIZE_EVENT:
278 pendingResize = true;
279 break;
280 }
281 }
282}
283
284#else
285static int MapNativeMouse(int button) {

Callers 1

Window_ProcessEventsFunction · 0.85

Calls 6

KeyEventProcFunction · 0.85
MouseEventProcFunction · 0.85
stdin_availableFunction · 0.85
ProcessConsoleInputFunction · 0.85
Input_SetReleasedFunction · 0.85
MapKeyFunction · 0.70

Tested by

no test coverage detected