package org.ovirt.engine.ui.webadmin.section.main.view.popup.gluster; import java.util.ArrayList; import org.ovirt.engine.core.common.businessentities.GlusterBrickEntity; import org.ovirt.engine.ui.uicommonweb.models.EntityModel; import org.ovirt.engine.ui.uicommonweb.models.ListModel; import org.ovirt.engine.ui.uicommonweb.models.gluster.AddBrickModel; import org.ovirt.engine.ui.webadmin.ApplicationConstants; import org.ovirt.engine.ui.webadmin.ApplicationResources; import org.ovirt.engine.ui.webadmin.idhandler.ElementIdHandler; import org.ovirt.engine.ui.webadmin.section.main.presenter.popup.gluster.AddBrickPopupPresenterWidget; import org.ovirt.engine.ui.webadmin.section.main.view.popup.AbstractModelBoundPopupView; import org.ovirt.engine.ui.webadmin.widget.dialog.SimpleDialogPanel; import org.ovirt.engine.ui.webadmin.widget.editor.EntityModelCellTable; import org.ovirt.engine.ui.webadmin.widget.table.column.EntityModelTextColumn; import com.google.gwt.core.client.GWT; import com.google.gwt.editor.client.SimpleBeanEditorDriver; import com.google.gwt.event.shared.EventBus; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.inject.Inject; public class AddBrickPopupView extends AbstractModelBoundPopupView<AddBrickModel> implements AddBrickPopupPresenterWidget.ViewDef { interface Driver extends SimpleBeanEditorDriver<AddBrickModel, AddBrickPopupView> { Driver driver = GWT.create(Driver.class); } interface ViewUiBinder extends UiBinder<SimpleDialogPanel, AddBrickPopupView> { ViewUiBinder uiBinder = GWT.create(ViewUiBinder.class); } interface ViewIdHandler extends ElementIdHandler<AddBrickPopupView> { ViewIdHandler idHandler = GWT.create(ViewIdHandler.class); } @UiField(provided = true) @Ignore EntityModelCellTable<ListModel> brickList; @Inject public AddBrickPopupView(EventBus eventBus, ApplicationResources resources, ApplicationConstants constants) { super(eventBus, resources); initBrickList(); initWidget(ViewUiBinder.uiBinder.createAndBindUi(this)); ViewIdHandler.idHandler.generateAndSetIds(this); localize(constants); Driver.driver.initialize(this); } private void initBrickList() { brickList = new EntityModelCellTable<ListModel>(true); brickList.addEntityModelColumn(new EntityModelTextColumn<EntityModel>() { @Override public String getValue(EntityModel model) { return ((GlusterBrickEntity)model.getEntity()).getQualifiedName(); } }, "Bricks"); } private void localize(ApplicationConstants constants) { } @Override public void focusInput() { } @Override public void edit(AddBrickModel object) { brickList.setRowData(new ArrayList<EntityModel>()); brickList.edit(object); object.initSelections(); Driver.driver.edit(object); } @Override public AddBrickModel flush() { brickList.flush(); return Driver.driver.flush(); } }