On 11/9/18 1:31 PM, Dominik Csapak wrote: > and show the default for each type of virtual gpu >
applied, thanks! > Signed-off-by: Dominik Csapak <[email protected]> > --- > www/manager6/Utils.js | 6 ++- > www/manager6/qemu/DisplayEdit.js | 89 > ++++++++++++++++++++++++++++++++++++---- > 2 files changed, 86 insertions(+), 9 deletions(-) > > diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js > index 568ceb7b..a659b093 100644 > --- a/www/manager6/Utils.js > +++ b/www/manager6/Utils.js > @@ -350,7 +350,11 @@ Ext.define('PVE.Utils', { utilities: { > if (!value) { > return Proxmox.Utils.defaultText; > } > - var text = PVE.Utils.kvm_vga_drivers[value]; > + var vga = PVE.Parser.parsePropertyString(value, 'type'); > + var text = PVE.Utils.kvm_vga_drivers[vga.type]; > + if (!vga.type) { > + text = Proxmox.Utils.defaultText; > + } > if (text) { > return text + ' (' + value + ')'; > } > diff --git a/www/manager6/qemu/DisplayEdit.js > b/www/manager6/qemu/DisplayEdit.js > index 936521ae..c31c69ad 100644 > --- a/www/manager6/qemu/DisplayEdit.js > +++ b/www/manager6/qemu/DisplayEdit.js > @@ -1,15 +1,24 @@ > -Ext.define('PVE.qemu.DisplayEdit', { > - extend: 'Proxmox.window.Edit', > +Ext.define('PVE.qemu.DisplayInputPanel', { > + extend: 'Proxmox.panel.InputPanel', > + xtype: 'pveDisplayInputPanel', > > - vmconfig: undefined, > - > - subject: gettext('Display'), > - width: 350, > + onGetValues: function(values) { > + var ret = PVE.Parser.printPropertyString(values, 'type'); > + if (ret === '') { > + return { > + 'delete': 'vga' > + }; > + } > + return { > + vga: ret > + }; > + }, > > items: [{ > - name: 'vga', > + name: 'type', > xtype: 'proxmoxKVComboBox', > value: '__default__', > + deleteEmpty: false, > fieldLabel: gettext('Graphic card'), > comboItems: PVE.Utils.kvm_vga_driver_array(), > validator: function() { > @@ -21,7 +30,70 @@ Ext.define('PVE.qemu.DisplayEdit', { > return Ext.String.format(fmt, v); > } > return true; > + }, > + listeners: { > + change: function(cb, val) { > + var me = this.up('panel'); > + if (!val) { > + return; > + } > + var disable = false; > + var emptyText = Proxmox.Utils.defaultText; > + switch (val) { > + case "cirrus": > + emptyText = "4"; > + break; > + case "std": > + emptyText = "16"; > + break; > + case "qxl": > + case "qxl2": > + case "qxl3": > + case "qxl4": > + emptyText = "16"; > + break; > + case "vmware": > + emptyText = "16"; > + break; > + case "serial0": > + case "serial1": > + case "serial2": > + case "serial3": > + emptyText = 'N/A'; > + disable = true; > + break; > + case "virtio": > + emptyText = "256"; > + break; > + default: > + break; > + } > + var memoryfield = me.down('field[name=memory]'); > + memoryfield.setEmptyText(emptyText); > + memoryfield.setDisabled(disable); > + } > } > + },{ > + xtype: 'proxmoxintegerfield', > + emptyText: Proxmox.Utils.defaultText, > + fieldLabel: gettext('Memory') + ' (MiB)', > + minValue: 4, > + maxValue: 512, > + step: 4, > + name: 'memory' > + }] > +}); > + > +Ext.define('PVE.qemu.DisplayEdit', { > + extend: 'Proxmox.window.Edit', > + > + vmconfig: undefined, > + > + subject: gettext('Display'), > + width: 350, > + > + items: [{ > + xtype: 'pveDisplayInputPanel' > }], > > initComponent : function() { > @@ -32,7 +104,8 @@ Ext.define('PVE.qemu.DisplayEdit', { > me.load({ > success: function(response) { > me.vmconfig = response.result.data; > - me.setValues(me.vmconfig); > + var vga = me.vmconfig.vga || '__default__'; > + me.setValues(PVE.Parser.parsePropertyString(vga, 'type')); > } > }); > } > _______________________________________________ pve-devel mailing list [email protected] https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
