Hello Alona Kaplan,
I'd like you to do a code review. Please visit
http://gerrit.ovirt.org/16804
to review the following change.
Change subject: webadmin: Redesigned Add/Edit Network
......................................................................
webadmin: Redesigned Add/Edit Network
Split the Add/Edit Network popup to General and Cluster tabs, and
accommodated attaching networks to a provider, in which case VLAN, MTU
and VM definitions cannot be changed (VM is true by default), and a
provider label may be provided.
Change-Id: I25b5533a41358d51b959f94f36e390f56f630d93
Signed-off-by: Alona Kaplan <[email protected]>
---
M
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
M
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
M
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkListModel.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/popup/AbstractNetworkPopupPresenterWidget.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.ui.xml
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditDataCenterNetworkPopupView.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditNetworkPopupView.java
9 files changed, 291 insertions(+), 115 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/04/16804/1
diff --git
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
index 7ed31e4..012669e 100644
---
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
+++
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
@@ -27,6 +27,9 @@
private EntityModel privateName;
private EntityModel privateDescription;
+ private EntityModel export;
+ private ListModel externalProviders;
+ private EntityModel networkLabel;
private EntityModel privateVLanTag;
private EntityModel privateIsStpEnabled;
private EntityModel privateHasVLanTag;
@@ -59,23 +62,55 @@
syncWithBackend();
}
});
- setVLanTag(new EntityModel());
+ setExport(new EntityModel(false));
+ getExport().getEntityChangedEvent().addListener(new IEventListener() {
+
+ @Override
+ public void eventRaised(Event ev, Object sender, EventArgs args) {
+ onExportChanged();
+ }
+ });
+
+ setExternalProviders(new ListModel());
+ setNetworkLabel(new EntityModel());
+
EntityModel stpEnabled = new EntityModel();
stpEnabled.setEntity(false);
setIsStpEnabled(stpEnabled);
+
+ setVLanTag(new EntityModel());
EntityModel hasVlanTag = new EntityModel();
hasVlanTag.setEntity(false);
setHasVLanTag(hasVlanTag);
+ getHasVLanTag().getEntityChangedEvent().addListener(new
IEventListener() {
+ @Override
+ public void eventRaised(Event ev, Object sender, EventArgs args) {
+ updateVlanTagChangeability();
+ }
+ });
+
setMtu(new EntityModel());
EntityModel hasMtu = new EntityModel();
hasMtu.setEntity(false);
setHasMtu(hasMtu);
+ getHasMtu().getEntityChangedEvent().addListener(new IEventListener() {
+ @Override
+ public void eventRaised(Event ev, Object sender, EventArgs args) {
+ updateMtuChangeability();
+ }
+ });
+
EntityModel isVmNetwork = new EntityModel();
isVmNetwork.setEntity(true);
setIsVmNetwork(isVmNetwork);
EntityModel publicUse = new EntityModel();
publicUse.setEntity(true);
setPublicUse(publicUse);
+
+ // Update changeability according to initial values
+ onExportChanged();
+ updateVlanTagChangeability();
+ updateMtuChangeability();
}
public EntityModel getName()
@@ -96,6 +131,30 @@
private void setDescription(EntityModel value)
{
privateDescription = value;
+ }
+
+ public EntityModel getExport() {
+ return export;
+ }
+
+ private void setExport(EntityModel value) {
+ export = value;
+ }
+
+ public ListModel getExternalProviders() {
+ return externalProviders;
+ }
+
+ public void setExternalProviders(ListModel externalProviders) {
+ this.externalProviders = externalProviders;
+ }
+
+ public EntityModel getNetworkLabel() {
+ return networkLabel;
+ }
+
+ public void setNetworkLabel(EntityModel networkLabel) {
+ this.networkLabel = networkLabel;
}
public EntityModel getVLanTag()
@@ -257,8 +316,10 @@
getMtu().validateEntity(new IValidation[] { new
NotEmptyValidation(), tempVar5 });
}
+ getExternalProviders().validateSelectedItem(new IValidation [] { new
NotEmptyValidation() });
+
return getName().getIsValid() && getVLanTag().getIsValid() &&
getDescription().getIsValid()
- && getMtu().getIsValid();
+ && getMtu().getIsValid() &&
getExternalProviders().getIsValid();
}
protected boolean firstInit = true;
@@ -284,7 +345,7 @@
}
- protected void addCommands(){
+ protected void addCommands() {
UICommand tempVar2 = new UICommand("OnSave", this); //$NON-NLS-1$
tempVar2.setTitle(ConstantsManager.getInstance().getConstants().ok());
tempVar2.setIsDefault(true);
@@ -304,6 +365,7 @@
network.setName((String) getName().getEntity());
network.setStp((Boolean) getIsStpEnabled().getEntity());
network.setDescription((String) getDescription().getEntity());
+ network.setLabel((String) getNetworkLabel().getEntity());
network.setVmNetwork((Boolean) getIsVmNetwork().getEntity());
network.setMtu(0);
@@ -370,4 +432,26 @@
protected abstract void initMtu();
protected abstract void initIsVm();
+
+ private void onExportChanged() {
+ boolean externalNetwork = (Boolean) getExport().getEntity();
+ getExternalProviders().setIsChangable(externalNetwork);
+ getNetworkLabel().setIsChangable(externalNetwork);
+ getHasVLanTag().setIsChangable(!externalNetwork);
+ getIsVmNetwork().setIsChangable(!externalNetwork);
+ getHasMtu().setIsChangable(!externalNetwork);
+ if (externalNetwork) {
+ getHasVLanTag().setEntity(false);
+ getIsVmNetwork().setEntity(true);
+ getHasMtu().setEntity(false);
+ }
+ }
+
+ private void updateVlanTagChangeability() {
+ getVLanTag().setIsChangable((Boolean) getHasVLanTag().getEntity());
+ }
+
+ private void updateMtuChangeability() {
+ getMtu().setIsChangable((Boolean) getHasMtu().getEntity());
+ }
}
diff --git
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
index 477f49e..a79268a 100644
---
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
+++
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
@@ -8,9 +8,11 @@
import org.ovirt.engine.core.common.action.VdcActionParametersBase;
import org.ovirt.engine.core.common.action.VdcActionType;
import org.ovirt.engine.core.common.action.VdcReturnValueBase;
+import org.ovirt.engine.core.common.businessentities.Provider;
import org.ovirt.engine.core.common.businessentities.VDSGroup;
import org.ovirt.engine.core.common.businessentities.network.Network;
import org.ovirt.engine.core.common.businessentities.network.NetworkCluster;
+import org.ovirt.engine.core.common.businessentities.network.ProviderNetwork;
import org.ovirt.engine.core.compat.Guid;
import org.ovirt.engine.ui.frontend.AsyncQuery;
import org.ovirt.engine.ui.frontend.Frontend;
@@ -77,7 +79,7 @@
protected NetworkClusterModel createNetworkClusterModel(VDSGroup cluster) {
NetworkClusterModel networkClusterModel = new
NetworkClusterModel(cluster);
- networkClusterModel.setAttached(false);
+ networkClusterModel.setAttached(true);
return networkClusterModel;
}
@@ -95,28 +97,41 @@
@Override
protected void executeSave() {
- // New network
- final AddNetworkStoragePoolParameters parameters =
- new AddNetworkStoragePoolParameters(getSelectedDc().getId(),
getNetwork());
- parameters.setPublicUse((Boolean) getPublicUse().getEntity());
- Frontend.RunAction(VdcActionType.AddNetwork,
- parameters,
- new IFrontendActionAsyncCallback() {
- @Override
- public void executed(FrontendActionAsyncResult result1) {
- VdcReturnValueBase retVal = result1.getReturnValue();
- boolean succeeded = false;
- if (retVal != null && retVal.getSucceeded())
- {
- succeeded = true;
- }
- postSaveAction(succeeded ? (Guid)
retVal.getActionReturnValue()
- : null,
- succeeded);
+ IFrontendActionAsyncCallback addNetworkCallback = new
IFrontendActionAsyncCallback() {
+ @Override
+ public void executed(FrontendActionAsyncResult result1) {
+ VdcReturnValueBase retVal = result1.getReturnValue();
+ boolean succeeded = false;
+ if (retVal != null && retVal.getSucceeded())
+ {
+ succeeded = true;
+ }
+ postSaveAction(succeeded ? (Guid) retVal.getActionReturnValue()
+ : null,
+ succeeded);
- }
- },
- null);
+ }
+ };
+
+ // New network
+ if ((Boolean) getExport().getEntity()) {
+ Provider externalProvider = (Provider)
getExternalProviders().getSelectedItem();
+ ProviderNetwork providerNetwork = new ProviderNetwork();
+ providerNetwork.setProviderId(externalProvider.getId());
+ getNetwork().setProvidedBy(providerNetwork);
+ final AddNetworkStoragePoolParameters parameters =
+ new
AddNetworkStoragePoolParameters(getSelectedDc().getId(), getNetwork());
+ Frontend.RunAction(VdcActionType.AddNetworkOnProvider,
+ parameters, addNetworkCallback, null);
+ } else {
+ final AddNetworkStoragePoolParameters parameters =
+ new
AddNetworkStoragePoolParameters(getSelectedDc().getId(), getNetwork());
+ parameters.setPublicUse((Boolean) getPublicUse().getEntity());
+ Frontend.RunAction(VdcActionType.AddNetwork,
+ parameters,
+ addNetworkCallback,
+ null);
+ }
}
@Override
@@ -136,8 +151,12 @@
Network tempVar = new Network();
tempVar.setId(networkId);
tempVar.setName(getNetwork().getName());
+
// Init default NetworkCluster values (required, display, status)
- tempVar.setCluster(new NetworkCluster());
+ NetworkCluster networkCluster = new NetworkCluster();
+ networkCluster.setRequired((Boolean) getExport().getEntity());
+ tempVar.setCluster(networkCluster);
+
actionParameters1.add(new
AttachNetworkToVdsGroupParameter(attachNetworkToCluster, tempVar));
}
diff --git
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkListModel.java
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkListModel.java
index cb7de49..555be7a 100644
---
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkListModel.java
+++
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkListModel.java
@@ -4,6 +4,7 @@
import java.util.Arrays;
import java.util.List;
+import org.ovirt.engine.core.common.businessentities.Provider;
import org.ovirt.engine.core.common.businessentities.StoragePool;
import org.ovirt.engine.core.common.businessentities.network.Network;
import org.ovirt.engine.core.common.businessentities.network.NetworkView;
@@ -75,6 +76,7 @@
final NetworkModel networkModel = new NewNetworkModel(this);
setWindow(networkModel);
+ networkModel.startProgress(null);
initDcList(networkModel);
}
@@ -97,6 +99,7 @@
final NetworkModel networkModel = new EditNetworkModel(network, this);
setWindow(networkModel);
+ networkModel.startProgress(null);
initDcList(networkModel);
}
@@ -118,6 +121,7 @@
networkModel.getDataCenters().setItems(Arrays.asList(dc));
networkModel.getDataCenters().setSelectedItem(dc);
networkModel.getDataCenters().setIsChangable(false);
+ initExternalNetworksList(networkModel);
return;
}
@@ -137,11 +141,33 @@
} else {
networkModel.getDataCenters().setSelectedItem(Linq.firstOrDefault(dataCenters));
}
-
+ initExternalNetworksList(networkModel);
}
}));
}
+ private void initExternalNetworksList(final NetworkModel networkModel) {
+ if (networkModel instanceof NewNetworkModel) {
+ AsyncQuery getProvidersQuery = new AsyncQuery();
+ getProvidersQuery.asyncCallback = new INewAsyncCallback() {
+ @Override
+ public void onSuccess(Object model, Object result)
+ {
+ List<Provider> providers =
Linq.toList(Linq.filterNetworkProviders((List<Provider>) result));
+ networkModel.getExternalProviders().setItems(providers);
+
networkModel.getExternalProviders().setSelectedItem(Linq.firstOrDefault(providers));
+ networkModel.stopProgress();
+ }
+ };
+ AsyncDataProvider.GetAllProviders(getProvidersQuery);
+ } else {
+ Provider provider = new Provider();
+ provider.setName(((NetworkView)
getSelectedItem()).getProviderName());
+ networkModel.getExternalProviders().setSelectedItem(provider);
+ networkModel.stopProgress();
+ }
+ }
+
private StoragePool findDc(Guid dcId, List<StoragePool> dataCenters) {
for (StoragePool dc : dataCenters) {
if (dcId.equals(dc.getId())) {
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
index 8ccd9b0..5483c64 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
@@ -2,6 +2,8 @@
import org.ovirt.engine.ui.common.CommonApplicationConstants;
+import com.google.gwt.i18n.client.Constants.DefaultStringValue;
+
public interface ApplicationConstants extends CommonApplicationConstants {
@DefaultStringValue("oVirt Engine Web Administration")
@@ -168,6 +170,18 @@
@DefaultStringValue("Description")
String descriptionLabel();
+
+ @DefaultStringValue("Export")
+ String exportLabel();
+
+ @DefaultStringValue("Create on external provider")
+ String exportCheckboxLabel();
+
+ @DefaultStringValue("External Provider")
+ String externalProviderLabel();
+
+ @DefaultStringValue("Network Label")
+ String networkLabel();
@DefaultStringValue("Host")
String hostQpid();
@@ -1020,6 +1034,12 @@
// Network
@DefaultStringValue("General")
+ String generalTabNetworkPopup();
+
+ @DefaultStringValue("Cluster")
+ String clusterTabNetworkPopup();
+
+ @DefaultStringValue("General")
String networkGeneralSubTabLabel();
@DefaultStringValue("Clusters")
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/popup/AbstractNetworkPopupPresenterWidget.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/popup/AbstractNetworkPopupPresenterWidget.java
index 6096fcb..2cd7db2 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/popup/AbstractNetworkPopupPresenterWidget.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/popup/AbstractNetworkPopupPresenterWidget.java
@@ -1,7 +1,6 @@
package org.ovirt.engine.ui.webadmin.section.main.presenter.popup;
import
org.ovirt.engine.ui.common.presenter.AbstractModelBoundPopupPresenterWidget;
-import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
import org.ovirt.engine.ui.uicommonweb.models.datacenters.NetworkModel;
import org.ovirt.engine.ui.uicompat.Event;
import org.ovirt.engine.ui.uicompat.EventArgs;
@@ -14,10 +13,6 @@
extends AbstractModelBoundPopupPresenterWidget<T, V> {
public interface ViewDef<T extends NetworkModel> extends
AbstractModelBoundPopupPresenterWidget.ViewDef<T> {
-
- void setVLanTagEnabled(boolean flag);
-
- void setMtuEnabled(boolean flag);
void setMessageLabel(String label);
@@ -33,43 +28,6 @@
public void init(final T model) {
// Let the parent do its work
super.init(model);
-
- // Set the enabled/disabled status of the VLAN tag field
- // according to the initial value in the model
- Boolean hasVLanTagValue = (Boolean) model.getHasVLanTag().getEntity();
- getView().setVLanTagEnabled(hasVLanTagValue);
-
- // Listen for changes in the VLAN enable/disable status in order
- // to enable/disable the VLAN tag field accordingly
- model.getHasVLanTag().getEntityChangedEvent().addListener(new
IEventListener() {
- @Override
- public void eventRaised(Event ev, Object sender, EventArgs args) {
- EntityModel hasVLanTagEntity = (EntityModel) sender;
- Boolean hasVLanTagValue = (Boolean)
hasVLanTagEntity.getEntity();
- getView().setVLanTagEnabled(hasVLanTagValue);
- }
- });
-
- // Set the enabled/disabled status of the MTU field
- // according to the initial value in the model
- Boolean hasMtuValue = (Boolean) model.getHasMtu().getEntity();
- getView().setMtuEnabled(hasMtuValue);
-
- // Listen for changes in the MTU enable/disable status in order
- // to enable/disable the MTU field accordingly
- model.getHasMtu().getEntityChangedEvent().addListener(new
IEventListener() {
- @Override
- public void eventRaised(Event ev, Object sender, EventArgs args) {
- EntityModel hasMtuEntity = (EntityModel) sender;
- Boolean hasMtuValue = (Boolean) hasMtuEntity.getEntity();
- getView().setMtuEnabled(hasMtuValue);
-
- // Clear MTU field in case MTU is disabled
- if (!hasMtuValue) {
- model.getMtu().setEntity(null);
- }
- }
- });
// Listen to Properties
model.getPropertyChangedEvent().addListener(new IEventListener() {
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
index 4d33bbe..55ed6f4 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
@@ -2,11 +2,13 @@
import java.util.ArrayList;
+import org.ovirt.engine.core.common.businessentities.Provider;
import org.ovirt.engine.core.common.businessentities.StoragePool;
import org.ovirt.engine.ui.common.idhandler.WithElementId;
import org.ovirt.engine.ui.common.view.popup.AbstractModelBoundPopupView;
import org.ovirt.engine.ui.common.widget.Align;
import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
+import org.ovirt.engine.ui.common.widget.dialog.tab.DialogTab;
import org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable;
import
org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable.SelectionMode;
import org.ovirt.engine.ui.common.widget.editor.EntityModelCheckBoxEditor;
@@ -54,6 +56,10 @@
@UiField
@Ignore
+ public Label exportLabel;
+
+ @UiField
+ @Ignore
public Label assignLabel;
@UiField(provided = true)
@@ -68,6 +74,16 @@
@UiField
@Path(value = "description.entity")
public EntityModelTextBoxEditor descriptionEditor;
+
+ @UiField(provided = true)
+ @Path(value = "export.entity")
+ @WithElementId("export")
+ public EntityModelCheckBoxEditor exportEditor;
+
+ @UiField(provided = true)
+ @Path(value = "externalProviders.selectedItem")
+ @WithElementId("externalProviders")
+ public ListModelListBoxEditor<Object> externalProviderEditor;
@UiField(provided = true)
@Path(value = "isVmNetwork.entity")
@@ -107,6 +123,18 @@
@Path(value = "publicUse.entity")
public final EntityModelCheckBoxEditor publicUseEditor;
+ @UiField
+ @Path(value = "networkLabel.entity")
+ public EntityModelTextBoxEditor networkLabel;
+
+ @UiField
+ @Ignore
+ public DialogTab generalTab;
+
+ @UiField
+ @Ignore
+ public DialogTab clusterTab;
+
@Inject
public AbstractNetworkPopupView(EventBus eventBus, ApplicationResources
resources,
ApplicationConstants constants, ApplicationTemplates templates) {
@@ -118,6 +146,13 @@
return ((StoragePool) object).getName();
}
});
+ externalProviderEditor = new ListModelListBoxEditor<Object>(new
NullSafeRenderer<Object>() {
+ @Override
+ public String renderNullSafe(Object object) {
+ return ((Provider) object).getName();
+ }
+ });
+ exportEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
isVmNetworkEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
vlanTagging = new EntityModelCheckBoxEditor(Align.RIGHT);
hasMtuEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
@@ -130,10 +165,17 @@
}
protected void localize(ApplicationConstants constants) {
+ generalTab.setLabel(constants.generalTabNetworkPopup());
+ clusterTab.setLabel(constants.clusterTabNetworkPopup());
+
dataCenterEditor.setLabel(constants.networkPopupDataCenterLabel());
assignLabel.setText(constants.networkPopupAssignLabel());
nameEditor.setLabel(constants.nameLabel());
descriptionEditor.setLabel(constants.descriptionLabel());
+ exportLabel.setText(constants.exportLabel());
+ exportEditor.setLabel(constants.exportCheckboxLabel());
+ externalProviderEditor.setLabel(constants.externalProviderLabel());
+ networkLabel.setLabel(constants.networkLabel());
isVmNetworkEditor.setLabel(constants.vmNetworkLabel());
vlanTagging.setLabel(constants.enableVlanTagLabel());
hasMtuEditor.setLabel(constants.overrideMtuLabel());
@@ -156,16 +198,6 @@
@Override
public void focusInput() {
nameEditor.setFocus(true);
- }
-
- @Override
- public void setVLanTagEnabled(boolean flag) {
- vlanTag.setEnabled(flag);
- }
-
- @Override
- public void setMtuEnabled(boolean flag) {
- mtuEditor.setEnabled(flag);
}
@Override
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.ui.xml
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.ui.xml
index 1db3e01..57d5e3b 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.ui.xml
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.ui.xml
@@ -2,15 +2,33 @@
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui"
xmlns:d="urn:import:org.ovirt.engine.ui.common.widget.dialog"
- xmlns:e="urn:import:org.ovirt.engine.ui.common.widget.editor"
xmlns:we="urn:import:org.ovirt.engine.ui.webadmin.widget.editor">
+ xmlns:e="urn:import:org.ovirt.engine.ui.common.widget.editor"
xmlns:we="urn:import:org.ovirt.engine.ui.webadmin.widget.editor"
+ xmlns:t="urn:import:org.ovirt.engine.ui.common.widget.dialog.tab">
<ui:with field='constants'
type='org.ovirt.engine.ui.webadmin.ApplicationConstants' />
<ui:style
type="org.ovirt.engine.ui.webadmin.section.main.view.popup.AbstractNetworkPopupView.WidgetStyle">
+ .generalTabTopDecorator {
+ background-color: #D3D3D3;
+ margin-bottom: 8px;
+ margin-top: 4px;
+ margin-right: 3px;
+ padding-top: 6px;
+ padding-bottom: 6px;
+ }
+
.mainLabel {
font-weight: bold;
padding: 5px;
+ }
+
+ .sectionStyle {
+ margin-top: 20px;
+ }
+
+ .exportField {
+ padding-left: 10px;
}
.mtuEditor {
@@ -36,10 +54,6 @@
padding: 5px;
}
- .indent {
- padding-left: 20px;
- }
-
.publicUseEditor {
padding: 0px;
width: 100%;
@@ -47,38 +61,59 @@
</ui:style>
- <d:SimpleDialogPanel ui:field="mainPanel" width="435px" height="520px">
+ <d:SimpleDialogPanel ui:field="mainPanel" width="670px" height="520px">
<d:content>
- <g:VerticalPanel>
- <g:FlowPanel>
- <g:Label ui:field="mainLabel"
addStyleNames="{style.mainLabel}" />
- <g:HTMLPanel
addStyleNames="{style.indent}">
- <g:HTML ui:field="messageLabel"
addStyleNames="{style.message}"/>
- <e:ListModelListBoxEditor
ui:field="dataCenterEditor"/>
- <e:EntityModelTextBoxEditor
ui:field="nameEditor" />
- <e:EntityModelTextBoxEditor
ui:field="descriptionEditor" />
- <g:HorizontalPanel>
-
<e:EntityModelCheckBoxEditor ui:field="vlanTagging"/>
-
<e:EntityModelTextBoxOnlyEditor ui:field="vlanTag" />
- </g:HorizontalPanel>
- <e:EntityModelCheckBoxEditor
ui:field="isVmNetworkEditor" />
- <g:HorizontalPanel>
-
<e:EntityModelCheckBoxEditor ui:field="hasMtuEditor"/>
-
<e:EntityModelTextBoxOnlyEditor ui:field="mtuEditor" />
- </g:HorizontalPanel>
- </g:HTMLPanel>
- </g:FlowPanel>
- <g:VerticalPanel ui:field="attachPanel">
- <g:Label ui:field="assignLabel"
addStyleNames="{style.mainLabel}"/>
- <g:HTMLPanel
addStyleNames="{style.indent}">
- <g:ScrollPanel height="160px"
width="100%">
- <e:EntityModelCellTable
ui:field="clustersTable" />
- </g:ScrollPanel>
- </g:HTMLPanel>
- <e:EntityModelCheckBoxEditor
ui:field="publicUseEditor"/>
- </g:VerticalPanel>
- </g:VerticalPanel>
+ <t:DialogTabPanel ui:field="tabPanel" height="100%">
+ <t:tab>
+ <t:DialogTab ui:field="generalTab">
+ <t:content>
+ <g:FlowPanel>
+ <g:FlowPanel
addStyleNames="{style.generalTabTopDecorator}">
+ <g:HTML
ui:field="messageLabel" addStyleNames="{style.message}"/>
+
<e:ListModelListBoxEditor ui:field="dataCenterEditor"/>
+
<e:EntityModelTextBoxEditor ui:field="nameEditor" />
+
<e:EntityModelTextBoxEditor ui:field="descriptionEditor" />
+ </g:FlowPanel>
+ <g:FlowPanel
addStyleNames="{style.sectionStyle}">
+
<g:Label ui:field="exportLabel" addStyleNames="{style.mainLabel}" />
+ <e:EntityModelCheckBoxEditor
ui:field="exportEditor" />
+
<e:ListModelListBoxEditor ui:field="externalProviderEditor"
addStyleNames="{style.exportField}" />
+
<e:EntityModelTextBoxEditor ui:field="networkLabel"
addStyleNames="{style.exportField}" />
+ </g:FlowPanel>
+ <g:FlowPanel
addStyleNames="{style.sectionStyle}">
+
<g:Label ui:field="mainLabel" addStyleNames="{style.mainLabel}" />
+
<g:HorizontalPanel>
+
<e:EntityModelCheckBoxEditor ui:field="vlanTagging"/>
+
<e:EntityModelTextBoxOnlyEditor ui:field="vlanTag" />
+
</g:HorizontalPanel>
+
<e:EntityModelCheckBoxEditor ui:field="isVmNetworkEditor" />
+
<g:HorizontalPanel>
+
<e:EntityModelCheckBoxEditor ui:field="hasMtuEditor"/>
+
<e:EntityModelTextBoxOnlyEditor ui:field="mtuEditor" />
+
</g:HorizontalPanel>
+ </g:FlowPanel>
+ <g:FlowPanel
addStyleNames="{style.sectionStyle}">
+
<e:EntityModelCheckBoxEditor ui:field="publicUseEditor"/>
+ </g:FlowPanel>
+ </g:FlowPanel>
+ </t:content>
+ </t:DialogTab>
+ </t:tab>
+ <t:tab>
+ <t:DialogTab ui:field="clusterTab">
+ <t:content>
+ <g:VerticalPanel ui:field="attachPanel">
+ <g:Label
ui:field="assignLabel" addStyleNames="{style.mainLabel}"/>
+ <g:ScrollPanel
height="160px" width="100%">
+
<e:EntityModelCellTable ui:field="clustersTable" />
+ </g:ScrollPanel>
+ </g:VerticalPanel>
+ </t:content>
+ </t:DialogTab>
+ </t:tab>
+ </t:DialogTabPanel>
</d:content>
</d:SimpleDialogPanel>
+
</ui:UiBinder>
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditDataCenterNetworkPopupView.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditDataCenterNetworkPopupView.java
index f76c500..ee4de7e 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditDataCenterNetworkPopupView.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditDataCenterNetworkPopupView.java
@@ -15,6 +15,7 @@
ApplicationResources resources,
ApplicationConstants constants, ApplicationTemplates templates) {
super(eventBus, resources, constants, templates);
+ mainPanel.setHeight("290px"); //$NON-NLS-1$
}
@Override
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditNetworkPopupView.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditNetworkPopupView.java
index ad64c01..c78d127 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditNetworkPopupView.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/EditNetworkPopupView.java
@@ -25,7 +25,7 @@
ApplicationConstants constants,
ApplicationTemplates templates) {
super(eventBus, resources, constants, templates);
- mainPanel.setHeight("290px"); //$NON-NLS-1$
+ mainPanel.setHeight("310px"); //$NON-NLS-1$
driver.initialize(this);
}
@@ -45,6 +45,7 @@
public void updateVisibility() {
super.updateVisibility();
attachPanel.setVisible(false);
+ clusterTab.setVisible(false);
}
@Override
--
To view, visit http://gerrit.ovirt.org/16804
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I25b5533a41358d51b959f94f36e390f56f630d93
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Lior Vernia <[email protected]>
Gerrit-Reviewer: Alona Kaplan <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches