package eu.dnetlib.client.header;

import com.google.gwt.core.shared.GWT;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.Widget;

import eu.dnetlib.client.leftColumn.OptionsWidget;
import eu.dnetlib.shared.SchemaAnswer;

public class LoadWidget implements IsWidget{

	private FlowPanel flowPanel = new FlowPanel();
	private SavingInfoServiceAsync savingInfo = GWT.create(SavingInfoService.class);
	private SchemaAnswer schemaFromServer;
	
	public LoadWidget(SchemaAnswer schemaFromServer) {
		this.schemaFromServer = schemaFromServer;
		designPanel();
	}
	
	public void designPanel(){
		
		flowPanel.addStyleName("loadFeature");
		flowPanel.add(new HTML("<h3>Load .xml on statistics tool</h3>"));

//		savingInfo.getFileNames(new AsyncCallback<ArrayList<String>>() {
//			
//			@Override
//			public void onSuccess(final ArrayList<String> result) {
//				
//				for(int i=0;i<result.size();i++){
//					
//					final int j=i;
//					ThumbnailLink tempThumb = new ThumbnailLink();
//					tempThumb.add(new HTML("<img style='width:30px;height:30px;'src='https://cdn3.iconfinder.com/data/icons/files/100/237015-file_document__chart_analytics_graph-512.png'>" +
//			                "<label>"+result.get(i)+"</label>"));
//					tempThumb.addClickHandler(new ClickHandler() {
//						
//						@Override
//						public void onClick(ClickEvent event) {
//							savingInfo.load("/home/vatopedi_john/Desktop/saves/"+result.get(j), new AsyncCallback<ValuesOfFields>() {
//								
//								@Override
//								public void onSuccess(ValuesOfFields result) {
//									ValuesOfFields.getInstance();
//									ValuesOfFields.setInstance(result);
//									loadResults();
//								}
//								
//								@Override
//								public void onFailure(Throwable caught) {
//									Window.alert("Unexpected error!");
//								}
//							});
//						}
//					});
//					container.add(tempThumb);
//				}
//				flowPanel.add(container);
//			}
//			
//			@Override
//			public void onFailure(Throwable caught) {
//				Window.alert("Unexpected error!");
//			}
//		});
		
	}
	
	private void loadResults(){
		RootPanel.get("optionsColumn").clear();
		new OptionsWidget(schemaFromServer, 0, true);
	}
	
	@Override
	public Widget asWidget() {
		// TODO Auto-generated method stub
		return flowPanel;
	}

}
