package org.gcube.portlets.user.accountingdashboard.client.application.mainarea.report; import java.util.ArrayList; import java.util.logging.Logger; import javax.inject.Inject; import org.gcube.portlets.user.accountingdashboard.client.application.mainarea.report.chartjs.Chart; import org.gcube.portlets.user.accountingdashboard.client.resources.AppResources; import org.gcube.portlets.user.accountingdashboard.shared.data.ReportData; import org.gcube.portlets.user.accountingdashboard.shared.data.ReportElementData; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.HTMLPanel; import com.google.gwt.user.client.ui.Widget; import com.gwtplatform.mvp.client.ViewWithUiHandlers; /** * * @author Giancarlo Panichi * */ public class ReportAreaView extends ViewWithUiHandlers implements ReportAreaPresenter.ReportAreaView { private static Logger logger = java.util.logging.Logger.getLogger(""); interface Binder extends UiBinder { } @UiField HTMLPanel reportPanel; private AppResources resources; @Inject ReportAreaView(Binder uiBinder, AppResources resources) { this.resources = resources; init(); initWidget(uiBinder.createAndBindUi(this)); ReportData rData=new ReportData(); ArrayList elements=new ArrayList<>(); ReportElementData reportElementData=new ReportElementData(); reportElementData.setxAxis("XAxis"); reportElementData.setyAxis("YAxis"); reportElementData.setCategory("Category"); reportElementData.setLabel("Label"); elements.add(reportElementData); rData.setElements(elements); displayReportData(rData); } private void init() { } /** * LABEL * | * | _ * yaxis | _ | | * | | || |_ * | | || | | * --------------------------------------------------- * * * *Series_label1 *Series_label2 *Series_label3 * * xAxis * */ @Override public void displayReportData(ReportData reportData) { if (reportData == null) { reportPanel.clear(); } else { reportPanel.clear(); for (int i = 0; i < reportData.getElements().size(); i++) { Chart chart = new Chart("report_" + i, reportData.getElements().get(i)); reportPanel.add(chart); } } } }