package org.ovirt.engine.ui.webadmin.section.main.view.popup.host.panels; import java.util.ArrayList; import java.util.List; import org.ovirt.engine.ui.uicommonweb.models.hosts.network.LogicalNetworkModel; import org.ovirt.engine.ui.webadmin.ApplicationConstants; import org.ovirt.engine.ui.webadmin.gin.AssetProvider; import com.google.gwt.user.client.ui.Label; import com.google.gwt.user.client.ui.SimplePanel; import com.google.gwt.user.client.ui.VerticalPanel; public class InternalNetworksPanel extends UnassignedNetworksPanel<NetworkPanel> { private static final ApplicationConstants constants = AssetProvider.getConstants(); private final VerticalPanel requiredPanel = new VerticalPanel(); private final VerticalPanel nonRequiredPanel = new VerticalPanel(); private final List<VerticalPanel> unassignNetworksList = new ArrayList<>(); private SimplePanel requiredTitlePanel; private SimplePanel nonRequiredTitlePanel; public InternalNetworksPanel() { unassignNetworksList.add(requiredPanel); unassignNetworksList.add(nonRequiredPanel); } @Override public void setStyle(final NetworkPanelsStyle style) { super.setStyle(style); stylePanel(requiredPanel); stylePanel(nonRequiredPanel); requiredTitlePanel = initTitlePanel(constants.requiredNetwork()); nonRequiredTitlePanel = initTitlePanel(constants.nonRequiredNetwork()); } private SimplePanel initTitlePanel(String title) { Label label = new Label(title); SimplePanel titlePanel = new SimplePanel(label); titlePanel.setStyleName(style.requiredTitlePanel()); label.getElement().addClassName(style.requiredLabel()); return titlePanel; } @Override public void addAll(List<NetworkPanel> list, boolean fadeIn) { requiredPanel.add(requiredTitlePanel); nonRequiredPanel.add(nonRequiredTitlePanel); for (NetworkPanel networkPanel : list) { LogicalNetworkModel networkModel = networkPanel.getItem(); boolean isRequired = networkModel.getNetwork().getCluster() != null && networkModel.getNetwork() .getCluster() .isRequired(); if (isRequired) { requiredPanel.add(networkPanel); } else { nonRequiredPanel.add(networkPanel); } } animatedPanel.addAll(unassignNetworksList, fadeIn); } @Override public void clear() { super.clear(); requiredPanel.clear(); nonRequiredPanel.clear(); } }