gtk_unregister_dialog(dialog2);
VF_FILTERS new_filter (void){  //  GtkObject *selected;  int position=0;  uint32_t sel,max=0;  VF_FILTERS tag=VF_INVALID;GtkWidget  *tree;GtkTreeIter   iter;uint8_t ret=0;  dialog2 = create_dialogList ();  tree=lookup_widget(dialog2,"treeview2");  gtk_widget_set_size_request (tree, 400, 400);  for (uint32_t i = 0; i < nb_video_filter; i++)    {     if(allfilters[i].viewable)     {   		gtk_list_store_append (storeFilterList, &iter);     		gtk_list_store_set (storeFilterList, &iter,0,allfilters[i].name,-1);		max++;     }    }        // Add double click	gtk_signal_connect (GTK_OBJECT (lookup_widget(dialog2,"treeview2")),				"row-activated", 				GTK_SIGNAL_FUNC (on_action_double_click), 				(void *)dialog);	if(gtk_dialog_run(GTK_DIALOG(dialog2))==GTK_RESPONSE_OK)	{			if(( ret=getSelectionNumber(max,tree  , storeFilterList,&sel)))			{					uint32_t  idx=0;					for(unsigned int i=0;i<nb_video_filter;i++)					{						if((sel==idx)&&(allfilters[i].viewable==1))						{							printf("\n position : %d tag :%d idx:%lu\n",position,tag,idx);							tag=allfilters[i].tag;							i=nb_video_filter;						}						else     							if(allfilters[i].viewable) idx++;					}			}	}	gtk_widget_destroy(dialog2);	return tag;}