]> git.proxmox.com Git - proxmox-widget-toolkit.git/blobdiff - form/DisplayEdit.js
use eslint and execute as check target
[proxmox-widget-toolkit.git] / form / DisplayEdit.js
index bc932fb4169f9654c36030ed8aeac0bd1469dd3d..b8060a56a37885ad6796ca591a28b05b48e07dbc 100644 (file)
@@ -1,10 +1,12 @@
 Ext.define('Proxmox.form.field.DisplayEdit', {
     extend: 'Ext.form.FieldContainer',
-    alias: ['widget.pmxDisplayEditField'],
+    alias: 'widget.pmxDisplayEditField',
 
     viewModel: {
+       parent: null,
        data: {
            editable: false,
+           value: undefined,
        },
     },
 
@@ -20,37 +22,40 @@ Ext.define('Proxmox.form.field.DisplayEdit', {
        vm.set('editable', editable);
     },
 
-    layout: 'hbox',
+    layout: 'fit',
     defaults: {
-       hideLabel: true
+       hideLabel: true,
     },
 
-    //setValue: me.callParent();
-
     initComponent: function() {
        let me = this;
 
        let displayConfig = {
            xtype: me.displayType,
-           bind: {
-               hidden: '{editable}',
-               disabled: '{editable}',
-           },
+           bind: {},
        };
        Ext.applyIf(displayConfig, me.initialConfig);
        delete displayConfig.editConfig;
        delete displayConfig.editable;
 
-       let editConfig = Ext.apply({}, me.editConfig); // clone, not reference!
+       let editConfig = Ext.apply({}, me.editConfig);
        Ext.applyIf(editConfig, {
            xtype: 'textfield',
-           bind: {
-               hidden: '{!editable}',
-               disabled: '{!editable}',
-           },
+           bind: {},
        });
        Ext.applyIf(editConfig, displayConfig);
 
+       Ext.applyIf(displayConfig.bind, {
+           hidden: '{editable}',
+           disabled: '{editable}',
+           value: '{value}',
+       });
+       Ext.applyIf(editConfig.bind, {
+           hidden: '{!editable}',
+           disabled: '{!editable}',
+           value: '{value}',
+       });
+
        // avoid glitch, start off correct even before viewmodel fixes it
        editConfig.disabled = editConfig.hidden = !me.editable;
        displayConfig.disabled = displayConfig.hidden = !!me.editable;
@@ -59,8 +64,8 @@ Ext.define('Proxmox.form.field.DisplayEdit', {
 
        Ext.apply(me, {
            items: [
-               displayConfig,
                editConfig,
+               displayConfig,
            ],
        });