Index: gui.c
===================================================================
--- gui.c	(revision 137)
+++ gui.c	(revision 138)
@@ -1986,3 +1986,26 @@
 raydium_gui_button_clicked_id=-1;
 return ret;
 }
+
+
+int raydium_gui_list_id(char *item, char *list)
+{
+int i,cpt,len,start;
+char items[RAYDIUM_GUI_DATASIZE];
+
+strcpy(items,list);
+
+len=strlen(items);
+for(i=0,cpt=0,start=0;i<=len;i++)
+    if(items[i]==RAYDIUM_GUI_ITEM_SEPARATOR || items[i]==0)
+    {
+    items[i]=0;
+    if(!strcmp(item,items+start))
+	{
+	return cpt;
+	}
+    cpt++;
+    start=i+1;
+    }
+return -1;
+}
nother window
 raydium_gui_window_focused=raydium_gui_windows[window].old_focused;
 raydium_gui_window_init(window);
@@ -1531,6 +1538,22 @@
 }
 
 
+void raydium_gui_window_OnDelete(int window, void *OnDelete)
+{
+if(!raydium_gui_window_isvalid(window))
+    {
+    raydium_log("GUI: Error: Cannot set OnDelete: invalid window");
+    return;
+    }
+
+raydium_gui_windows[window].OnDelete=OnDelete;
+}
+
+void raydium_gui_window_OnDelete_name(char *window, void *OnDelete)
+{
+raydium_gui_window_OnDelete(raydium_gui_window_find(window),OnDelete);
+}
+
 void raydium_gui_widget_sizes(GLfloat sizex, GLfloat sizey, GLfloat font_size)
 {
 raydium_gui_widget_sizes_default[0]=sizex;