134 lines
4.8 KiB
Java
134 lines
4.8 KiB
Java
/**
|
|
*
|
|
*/
|
|
package org.gcube.portlets.widgets.wstaskexecutor.client.view.binder;
|
|
|
|
import java.util.List;
|
|
|
|
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration;
|
|
import org.gcube.portlets.widgets.wstaskexecutor.client.WsTaskExecutorWidget;
|
|
import org.gcube.portlets.widgets.wstaskexecutor.client.event.ShowCreateTaskConfigurationEvent;
|
|
import org.gcube.portlets.widgets.wstaskexecutor.shared.WSItem;
|
|
|
|
import com.github.gwtbootstrap.client.ui.Button;
|
|
import com.github.gwtbootstrap.client.ui.constants.IconType;
|
|
import com.google.gwt.core.client.GWT;
|
|
import com.google.gwt.dom.client.Style.Unit;
|
|
import com.google.gwt.event.dom.client.ClickEvent;
|
|
import com.google.gwt.event.dom.client.ClickHandler;
|
|
import com.google.gwt.uibinder.client.UiBinder;
|
|
import com.google.gwt.uibinder.client.UiField;
|
|
import com.google.gwt.uibinder.client.UiHandler;
|
|
import com.google.gwt.user.client.ui.Composite;
|
|
import com.google.gwt.user.client.ui.FlexTable;
|
|
import com.google.gwt.user.client.ui.HTML;
|
|
import com.google.gwt.user.client.ui.Widget;
|
|
|
|
|
|
/**
|
|
*
|
|
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
|
* May 9, 2018
|
|
*/
|
|
public class ShowTaskConfigurationsView extends Composite {
|
|
|
|
private static ShowTaskConfigurationViewUiBinder uiBinder =
|
|
GWT.create(ShowTaskConfigurationViewUiBinder.class);
|
|
|
|
interface ShowTaskConfigurationViewUiBinder
|
|
extends UiBinder<Widget, ShowTaskConfigurationsView> {
|
|
}
|
|
|
|
@UiField
|
|
Button butt_CreateNewConfiguration;
|
|
|
|
@UiField
|
|
FlexTable flex_table_configurations;
|
|
|
|
private WSItem folder;
|
|
|
|
|
|
/**
|
|
* Because this class has a default constructor, it can
|
|
* be used as a binder template. In other words, it can be used in other
|
|
* *.ui.xml files as follows:
|
|
* <ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
|
|
* xmlns:g="urn:import:**user's package**">
|
|
* <g:**UserClassName**>Hello!</g:**UserClassName>
|
|
* </ui:UiBinder>
|
|
* Note that depending on the widget that is used, it may be necessary to
|
|
* implement HasHTML instead of HasText.
|
|
*/
|
|
public ShowTaskConfigurationsView(WSItem folder, List<TaskConfiguration> listTaskConfigurations) {
|
|
this.folder = folder;
|
|
|
|
initWidget(uiBinder.createAndBindUi(this));
|
|
|
|
flex_table_configurations.setCellSpacing(4);
|
|
flex_table_configurations.getElement().getStyle().setMarginTop(10, Unit.PX);
|
|
flex_table_configurations.addStyleName("table-fixed");
|
|
//flex_table_configurations.setWidget(0, 0, new HTML("<b>Config Id<b>"));
|
|
flex_table_configurations.setWidget(0, 0, new HTML("<b>Algorithm Id<b>"));
|
|
flex_table_configurations.setWidget(0, 1, new HTML("<b>VRE<b>"));
|
|
flex_table_configurations.setWidget(0, 2, new HTML("<b>Owner<b>"));
|
|
flex_table_configurations.setWidget(0, 3, new HTML("<b>Oper.<b>"));
|
|
flex_table_configurations.setWidget(0, 4, new HTML("<b>Oper.<b>"));
|
|
//flex_table_configurations.getColumnFormatter().setWidth(0, "10%");
|
|
flex_table_configurations.getColumnFormatter().setWidth(0, "35%");
|
|
flex_table_configurations.getColumnFormatter().setWidth(1, "30%");
|
|
flex_table_configurations.getColumnFormatter().setWidth(2, "20%");
|
|
flex_table_configurations.getColumnFormatter().setWidth(3, "7%");
|
|
flex_table_configurations.getColumnFormatter().setWidth(4, "7%");
|
|
//flex_table_configurations.getColumnFormatter().setWidth(5, "7%");
|
|
// flt.setWidget(0, 1, new HTML("<b>Description<b>"));
|
|
for (int i = 0; i<listTaskConfigurations.size(); i++) {
|
|
final TaskConfiguration taskConfiguration = listTaskConfigurations.get(i);
|
|
//flex_table_configurations.setWidget(i+1, 0, new HTML(taskConfiguration.getConfigurationKey()));
|
|
flex_table_configurations.setWidget(i+1, 0, new HTML(taskConfiguration.getTaskId()));
|
|
flex_table_configurations.setWidget(i+1, 1, new HTML(taskConfiguration.getScope().substring(taskConfiguration.getScope().lastIndexOf("/")+1, taskConfiguration.getScope().length())));
|
|
flex_table_configurations.setWidget(i+1, 2, new HTML(taskConfiguration.getOwner()));
|
|
Button buttEdit = new Button();
|
|
buttEdit.setIcon(IconType.EDIT_SIGN);
|
|
//buttEdit.setType(ButtonType.LINK);
|
|
buttEdit.setTitle("Edit/Show the Configuration");
|
|
buttEdit.addClickHandler(new ClickHandler() {
|
|
|
|
@Override
|
|
public void onClick(ClickEvent event) {
|
|
|
|
}
|
|
});
|
|
|
|
flex_table_configurations.setWidget(i+1, 3, buttEdit);
|
|
|
|
Button buttRemove = new Button();
|
|
buttRemove.setIcon(IconType.REMOVE_SIGN);
|
|
//buttRemove.setType(ButtonType.LINK);
|
|
buttRemove.setTitle("Delete the Configuration");
|
|
buttRemove.addClickHandler(new ClickHandler() {
|
|
|
|
@Override
|
|
public void onClick(ClickEvent event) {
|
|
|
|
}
|
|
});
|
|
flex_table_configurations.setWidget(i+1, 4, buttRemove);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* Adds the custom field event.
|
|
*
|
|
* @param e the e
|
|
*/
|
|
@UiHandler("butt_CreateNewConfiguration")
|
|
void addCustomFieldEvent(ClickEvent e){
|
|
|
|
WsTaskExecutorWidget.eventBus.fireEvent(new ShowCreateTaskConfigurationEvent(folder));
|
|
|
|
}
|
|
|
|
}
|