From b7433e108da26346c189888d0aa07ab0e896a709 Mon Sep 17 00:00:00 2001 From: JozanLeClerc Date: Sun, 15 Mar 2020 17:01:55 +0100 Subject: GNU libx --- minilibx_linux/mlx_loop.c | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 minilibx_linux/mlx_loop.c (limited to 'minilibx_linux/mlx_loop.c') diff --git a/minilibx_linux/mlx_loop.c b/minilibx_linux/mlx_loop.c new file mode 100644 index 0000000..74af0a5 --- /dev/null +++ b/minilibx_linux/mlx_loop.c @@ -0,0 +1,38 @@ +/* +** mlx_loop.c for MiniLibX in +** +** Made by Charlie Root +** Login +** +** Started on Wed Aug 2 18:58:11 2000 Charlie Root +** Last update Fri Sep 30 14:47:41 2005 Olivier Crouzet +*/ + + +#include "mlx_int.h" + +extern int (*(mlx_int_param_event[]))(); + + +int mlx_loop(t_xvar *xvar) +{ + XEvent ev; + t_win_list *win; + + mlx_int_set_win_event_mask(xvar); + xvar->do_flush = 0; + while (42) + { + while (!xvar->loop_hook || XPending(xvar->display)) + { + XNextEvent(xvar->display,&ev); + win = xvar->win_list; + while (win && (win->window!=ev.xany.window)) + win = win->next; + if (win && ev.type < MLX_MAX_EVENT) + if (win->hooks[ev.type].hook) + mlx_int_param_event[ev.type](xvar, &ev, win); + } + xvar->loop_hook(xvar->loop_param); + } +} -- cgit v1.2.3