/ minilibx-linux / mlx_destroy_window.c
mlx_destroy_window.c
 1  /*
 2  ** mlx_destroy_window.c for MinilibX in 
 3  ** 
 4  ** Made by Charlie Root
 5  ** Login   <ol@epitech.net>
 6  ** 
 7  ** Started on  Tue Mar 12 10:25:15 2002 Charlie Root
 8  ** Last update Tue May 15 16:46:08 2007 Olivier Crouzet
 9  */
10  
11  
12  #include	"mlx_int.h"
13  
14  
15  int	mlx_destroy_window(t_xvar *xvar,t_win_list *win)
16  {
17    t_win_list	*w;
18    t_win_list	*prev;
19    t_win_list	first;
20  
21    first.next = xvar->win_list;
22    prev = &first;
23    w = prev->next;
24    while (w)
25      {
26        if (w==win)
27  	prev->next = w->next;
28        else
29  	prev = w;
30        w = w->next;
31      }
32    xvar->win_list = first.next;
33    XDestroyWindow(xvar->display,win->window);
34    XFreeGC(xvar->display,win->gc);
35    free(win);
36    if (xvar->do_flush)
37      XFlush(xvar->display);
38  }