Tomas Jelinek has uploaded a new change for review. Change subject: WIP detachable text box ......................................................................
WIP detachable text box Do not review - only a backup of the work on detachable text boxes for instance types Change-Id: I5084baefb1cda3d6e9327f24bf0c8bf3b0b76962 Signed-off-by: Tomas Jelinek <tjeli...@redhat.com> --- M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.java A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.ui.xml A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBoxEditor.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.ui.xml M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewInstanceTypeModelBehavior.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmModelBehavior.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java 10 files changed, 267 insertions(+), 10 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/79/22179/1 diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java index f520059..1458b98 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java @@ -463,6 +463,9 @@ @DefaultStringValue("Based on Template") String basedOnTemplateVmPopup(); + @DefaultStringValue("Instance Type") + String instanceType(); + @DefaultStringValue("Memory Size") String memSizeVmPopup(); diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.java new file mode 100644 index 0000000..59419b0 --- /dev/null +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.java @@ -0,0 +1,89 @@ +package org.ovirt.engine.ui.common.widget.editor.generic; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.InputElement; +import com.google.gwt.editor.ui.client.adapters.ValueBoxEditor; +import com.google.gwt.event.dom.client.KeyDownHandler; +import com.google.gwt.event.dom.client.KeyPressHandler; +import com.google.gwt.event.dom.client.KeyUpHandler; +import com.google.gwt.event.shared.HandlerRegistration; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.UIObject; +import com.google.gwt.user.client.ui.Widget; +import org.ovirt.engine.ui.common.widget.editor.EditorWidget; + +public class EntityModelDetachableTextBox<T, W extends UIObject & EditorWidget<T, ValueBoxEditor<T>>> extends Composite implements EditorWidget<T, ValueBoxEditor<T>> { + + interface WidgetUiBinder extends UiBinder<Widget, EntityModelDetachableTextBox<?, ?>> { + WidgetUiBinder uiBinder = GWT.create(WidgetUiBinder.class); + } + + @UiField(provided = true) + InputElement inputBox; + + private W decorated; + + public EntityModelDetachableTextBox(W decorated) { + this.inputBox = InputElement.as(decorated.getElement()); + this.decorated = decorated; + + initWidget(WidgetUiBinder.uiBinder.createAndBindUi(this)); + } + + public W getDecorated() { + return decorated; + } + + @Override + public int getTabIndex() { + return decorated.getTabIndex(); + } + + @Override + public void setAccessKey(char key) { + decorated.setAccessKey(key); + } + + @Override + public void setFocus(boolean focused) { + decorated.setFocus(focused); + } + + @Override + public void setTabIndex(int index) { + decorated.setTabIndex(index); + } + + @Override + public boolean isEnabled() { + return decorated.isEnabled(); + } + + @Override + public void setEnabled(boolean enabled) { + decorated.setEnabled(enabled); + } + + @Override + public HandlerRegistration addKeyDownHandler(KeyDownHandler handler) { + return decorated.addKeyDownHandler(handler); + } + + @Override + public HandlerRegistration addKeyPressHandler(KeyPressHandler handler) { + return decorated.addKeyPressHandler(handler); + } + + @Override + public HandlerRegistration addKeyUpHandler(KeyUpHandler handler) { + return decorated.addKeyUpHandler(handler); + } + + @Override + public ValueBoxEditor<T> asEditor() { + return decorated.asEditor(); + } + +} diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.ui.xml b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.ui.xml new file mode 100644 index 0000000..fe1ad27 --- /dev/null +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBox.ui.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!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"> + + <ui:with field='resources' type='org.ovirt.engine.ui.common.CommonApplicationResources' /> + + <ui:style> + .contentPanel { + background-color: red; + } + </ui:style> + + <g:HTMLPanel addStyleNames="{style.contentPanel}"> + <input ui:field="inputBox"/> + <g:Label text="some text" /> + </g:HTMLPanel> + +</ui:UiBinder> diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBoxEditor.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBoxEditor.java new file mode 100644 index 0000000..e60a93f --- /dev/null +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/generic/EntityModelDetachableTextBoxEditor.java @@ -0,0 +1,30 @@ +package org.ovirt.engine.ui.common.widget.editor.generic; + +import com.google.gwt.editor.client.Editor; +import com.google.gwt.editor.client.IsEditor; +import com.google.gwt.text.shared.Parser; +import com.google.gwt.text.shared.Renderer; +import com.google.gwt.user.client.ui.Widget; +import org.ovirt.engine.ui.common.widget.AbstractValidatedWidgetWithLabel; +import org.ovirt.engine.ui.common.widget.VisibilityRenderer; +import org.ovirt.engine.ui.common.widget.editor.WidgetWithLabelEditor; + +public class EntityModelDetachableTextBoxEditor<T> extends AbstractValidatedWidgetWithLabel<T, EntityModelDetachableTextBox<T, EntityModelDetachableTextBox<T, EntityModelTextBox<T>>>> + implements IsEditor<WidgetWithLabelEditor<T, EntityModelDetachableTextBoxEditor<T>>>, Editor<T> { + + + public EntityModelDetachableTextBoxEditor(Renderer<T> renderer, Parser<T> parser, VisibilityRenderer visibilityRenderer) { + super(new EntityModelDetachableTextBox(new EntityModelTextBox<T>(renderer, parser)), visibilityRenderer); + } + + @Override + public WidgetWithLabelEditor<T, EntityModelDetachableTextBoxEditor<T>> asEditor() { + return WidgetWithLabelEditor.of(getContentWidget().asEditor(), this); + } + + @Override + protected void initWidget(Widget wrapperWidget) { + super.initWidget(wrapperWidget); + + } +} diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java index 8782425..f764316 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java @@ -32,6 +32,7 @@ import org.ovirt.engine.core.common.businessentities.DiskImage; import org.ovirt.engine.core.common.businessentities.DisplayType; import org.ovirt.engine.core.common.businessentities.ImageStatus; +import org.ovirt.engine.core.common.businessentities.InstanceType; import org.ovirt.engine.core.common.businessentities.MigrationSupport; import org.ovirt.engine.core.common.businessentities.Quota; import org.ovirt.engine.core.common.businessentities.UsbPolicy; @@ -57,6 +58,7 @@ import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxOnlyEditor; import org.ovirt.engine.ui.common.widget.editor.ListModelTypeAheadListBoxEditor; import org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor; +import org.ovirt.engine.ui.common.widget.editor.generic.EntityModelDetachableTextBoxEditor; import org.ovirt.engine.ui.common.widget.editor.generic.EntityModelRadioButtonEditor; import org.ovirt.engine.ui.common.widget.editor.generic.EntityModelTextBoxEditor; import org.ovirt.engine.ui.common.widget.editor.generic.EntityModelTextBoxOnlyEditor; @@ -177,6 +179,11 @@ public ListModelListBoxEditor<VmType> vmTypeEditor; @UiField(provided = true) + @Path(value = "instanceTypes.selectedItem") + @WithElementId("instanceType") + public ListModelTypeAheadListBoxEditor<InstanceType> instanceTypesEditor; + + @UiField(provided = true) @Path(value = "isDeleteProtected.entity") @WithElementId("isDeleteProtected") public EntityModelCheckBoxEditor isDeleteProtectedEditor; @@ -200,7 +207,7 @@ @UiField(provided = true) @Path(value = "memSize.entity") @WithElementId("memSize") - public EntityModelTextBoxEditor<Integer> memSizeEditor; + public EntityModelDetachableTextBoxEditor<Integer> memSizeEditor; @UiField(provided = true) @Path(value = "totalCPUCores.entity") @@ -624,7 +631,7 @@ initListBoxEditors(); // Contains a special parser/renderer - memSizeEditor = new EntityModelTextBoxEditor<Integer>( + memSizeEditor = new EntityModelDetachableTextBoxEditor<Integer>( new MemorySizeRenderer<Integer>(constants), new MemorySizeParser(), new ModeSwitchingVisibilityRenderer()); minAllocatedMemoryEditor = new EntityModelTextBoxEditor<Integer>( new MemorySizeRenderer<Integer>(constants), new MemorySizeParser(), new ModeSwitchingVisibilityRenderer()); @@ -829,6 +836,25 @@ vmTypeEditor = new ListModelListBoxEditor<VmType>(new EnumRenderer(), new ModeSwitchingVisibilityRenderer()); + instanceTypesEditor = new ListModelTypeAheadListBoxEditor<InstanceType>( + new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<InstanceType>() { + + @Override + public String getReplacementStringNullSafe(InstanceType data) { + return data.getName(); + } + + @Override + public String getDisplayStringNullSafe(InstanceType data) { + return typeAheadNameDescriptionTemplateNullSafe( + data.getName(), + data.getDescription() + ); + } + }, + new ModeSwitchingVisibilityRenderer() + ); + numOfSocketsEditor = new ListModelListBoxEditor<Integer>(new ModeSwitchingVisibilityRenderer()); corePerSocketEditor = new ListModelListBoxEditor<Integer>(new ModeSwitchingVisibilityRenderer()); @@ -960,6 +986,7 @@ descriptionEditor.setLabel(constants.descriptionVmPopup()); commentEditor.setLabel(constants.commentLabel()); templateEditor.setLabel(constants.basedOnTemplateVmPopup()); + instanceTypesEditor.setLabel(constants.instanceType()); oSTypeEditor.setLabel(constants.osVmPopup()); vmTypeEditor.setLabel(constants.optimizedFor()); @@ -1365,6 +1392,7 @@ nextTabIndex = generalTab.setTabIndexes(nextTabIndex); quotaEditor.setTabIndex(nextTabIndex++); oSTypeEditor.setTabIndex(nextTabIndex++); + instanceTypesEditor.setTabIndexes(nextTabIndex++); templateEditor.setTabIndex(nextTabIndex++); nameEditor.setTabIndex(nextTabIndex++); diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.ui.xml b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.ui.xml index faf111f..28e41fa 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.ui.xml +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.ui.xml @@ -310,16 +310,21 @@ .migrationSelectorInner { width: 260px; } + + .headerCol { + float: left; + } </ui:style> <t:DialogTabPanel width="100%" height="100%" ui:field="mainTabPanel"> <t:header> <g:FlowPanel addStyleNames="{style.headerPanel}"> - <e:ListModelTypeAheadListBoxEditor ui:field="dataCenterWithClusterEditor" /> - <e:ListModelTypeAheadListBoxEditor ui:field="quotaEditor" /> - <e:ListModelTypeAheadListBoxEditor ui:field="templateEditor"/> - <e:ListModelListBoxEditor ui:field="oSTypeEditor" /> - <e:ListModelListBoxEditor ui:field="vmTypeEditor" /> + <e:ListModelTypeAheadListBoxEditor ui:field="dataCenterWithClusterEditor" /> + <e:ListModelTypeAheadListBoxEditor ui:field="quotaEditor" /> + <e:ListModelTypeAheadListBoxEditor ui:field="templateEditor"/> + <e:ListModelListBoxEditor ui:field="oSTypeEditor" /> + <e:ListModelTypeAheadListBoxEditor ui:field="instanceTypesEditor" /> + <e:ListModelListBoxEditor ui:field="vmTypeEditor" /> </g:FlowPanel> </t:header> <t:tab> @@ -404,7 +409,7 @@ <t:DialogTab ui:field="systemTab"> <t:content> <g:FlowPanel> - <ge:EntityModelTextBoxEditor ui:field="memSizeEditor"/> + <ge:EntityModelDetachableTextBoxEditor ui:field="memSizeEditor"/> <ge:EntityModelTextBoxEditor ui:field="totalvCPUsEditor" /> <g:FlowPanel addStyleNames="{style.sectionPanel}"> <d:AdvancedParametersExpander ui:field="vcpusAdvancedParameterExpander"/> diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java index 8a3540d..acfea50 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java @@ -77,6 +77,8 @@ VM vm = new VM(); vm.setName(model.getName().getEntity()); vm.setSingleQxlPci(false); + vm.setVdsGroupId(model.getSelectedCluster().getId()); + vm.setStoragePoolId(model.getSelectedDataCenter().getId()); AddVmTemplateParameters addInstanceTypeParameters = new AddVmTemplateParameters(vm, model.getName().getEntity(), model.getDescription().getEntity()); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewInstanceTypeModelBehavior.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewInstanceTypeModelBehavior.java index 6b0231e..d6f0187 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewInstanceTypeModelBehavior.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewInstanceTypeModelBehavior.java @@ -1,5 +1,13 @@ package org.ovirt.engine.ui.uicommonweb.models.vms; +import java.util.ArrayList; +import java.util.List; +import org.ovirt.engine.core.common.businessentities.StoragePool; +import org.ovirt.engine.core.common.businessentities.StoragePoolStatus; +import org.ovirt.engine.core.common.businessentities.VDSGroup; +import org.ovirt.engine.ui.frontend.AsyncQuery; +import org.ovirt.engine.ui.frontend.INewAsyncCallback; +import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider; import org.ovirt.engine.ui.uicommonweb.models.SystemTreeItemModel; public class NewInstanceTypeModelBehavior extends VmModelBehaviorBase<UnitVmModel> { @@ -7,6 +15,39 @@ @Override public void initialize(SystemTreeItemModel systemTreeSelectedItem) { super.initialize(systemTreeSelectedItem); + AsyncDataProvider.getDataCenterByClusterServiceList(new AsyncQuery(getModel(), + new INewAsyncCallback() { + @Override + public void onSuccess(Object target, Object returnValue) { + + final ArrayList<StoragePool> dataCenters = new ArrayList<StoragePool>(); + for (StoragePool a : (ArrayList<StoragePool>) returnValue) { + if (a.getStatus() == StoragePoolStatus.Up) { + dataCenters.add(a); + } + } + + if (!dataCenters.isEmpty()) { + AsyncDataProvider.getClusterListByService( + new AsyncQuery(getModel(), new INewAsyncCallback() { + + @Override + public void onSuccess(Object target, Object returnValue) { + UnitVmModel model = (UnitVmModel) target; + model.setDataCentersAndClusters(model, + dataCenters, + (List<VDSGroup>) returnValue, null); + + } + }, getModel().getHash()), + true, false); + } else { + getModel().disableEditing(); + } + } + }, getModel().getHash()), + true, + false); } @Override diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmModelBehavior.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmModelBehavior.java index 8cc0a3f..be9d309 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmModelBehavior.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmModelBehavior.java @@ -3,6 +3,7 @@ import java.util.ArrayList; import java.util.List; import org.ovirt.engine.core.common.businessentities.DisplayType; +import org.ovirt.engine.core.common.businessentities.InstanceType; import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.businessentities.StoragePool; import org.ovirt.engine.core.common.businessentities.StoragePoolStatus; @@ -11,7 +12,9 @@ import org.ovirt.engine.core.common.businessentities.VmType; import org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface; import org.ovirt.engine.core.common.businessentities.network.VnicProfileView; +import org.ovirt.engine.core.common.interfaces.SearchType; import org.ovirt.engine.core.common.queries.IdQueryParameters; +import org.ovirt.engine.core.common.queries.SearchParameters; import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.core.compat.Guid; @@ -71,6 +74,25 @@ false); initPriority(0); + initInstanceTypes(); + } + + private void initInstanceTypes() { + SearchParameters params = new SearchParameters("Instancetypes:", SearchType.InstanceType, true); //$NON-NLS-1$ + AsyncQuery query = new AsyncQuery(); + query.setModel(this); + query.asyncCallback = new INewAsyncCallback() { + @Override + public void onSuccess(Object model, Object returnValue) { + if (returnValue != null) { + VdcQueryReturnValue res = (VdcQueryReturnValue) returnValue; + getModel().getInstanceTypes().setItems((Iterable<InstanceType>) res.getReturnValue()); + } + } + }; + + Frontend.RunQuery(VdcQueryType.Search, params, query); + } @Override diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java index 0809ccf..ebad3f5 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java @@ -9,6 +9,7 @@ import org.ovirt.engine.core.common.businessentities.BootSequence; import org.ovirt.engine.core.common.businessentities.DisplayType; +import org.ovirt.engine.core.common.businessentities.InstanceType; import org.ovirt.engine.core.common.businessentities.MigrationSupport; import org.ovirt.engine.core.common.businessentities.Quota; import org.ovirt.engine.core.common.businessentities.QuotaEnforcementTypeEnum; @@ -431,6 +432,16 @@ private void setTemplate(NotChangableForVmInPoolListModel<VmTemplate> value) { privateTemplate = value; + } + + private NotChangableForVmInPoolListModel<InstanceType> instanceTypes; + + public void setInstanceTypes(NotChangableForVmInPoolListModel<InstanceType> instanceTypes) { + this.instanceTypes = instanceTypes; + } + + public ListModel<InstanceType> getInstanceTypes() { + return instanceTypes; } private NotChangableForVmInPoolListModel<VmType> vmType; @@ -1220,6 +1231,9 @@ setTemplate(new NotChangableForVmInPoolListModel<VmTemplate>()); getTemplate().getSelectedItemChangedEvent().addListener(this); + setInstanceTypes(new NotChangableForVmInPoolListModel<InstanceType>()); + getInstanceTypes().getSelectedItemChangedEvent().addListener(this); + setQuota(new NotChangableForVmInPoolListModel<Quota>()); getQuota().setIsAvailable(false); @@ -1412,8 +1426,9 @@ else if (sender == getTemplate()) { template_SelectedItemChanged(sender, args); - } - else if (sender == getTimeZone()) + } else if (sender == getInstanceTypes()) { + instanceTypeSelectedItemChanged(); + } else if (sender == getTimeZone()) { timeZone_SelectedItemChanged(sender, args); } @@ -1493,6 +1508,10 @@ } } + private void instanceTypeSelectedItemChanged() { + // TODO + } + private void vmTypeChanged() { behavior.vmTypeChanged(getVmType().getSelectedItem()); } -- To view, visit http://gerrit.ovirt.org/22179 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I5084baefb1cda3d6e9327f24bf0c8bf3b0b76962 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Tomas Jelinek <tjeli...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches