mirror of
https://git.proxmox.com/git/proxmox-widget-toolkit
synced 2025-05-29 15:33:08 +00:00
ObjectGrid: add run_editor() and reload() helpers
This commit is contained in:
parent
b2d1d61fec
commit
7ec6cd9e86
@ -22,6 +22,48 @@ Ext.define('Proxmox.grid.ObjectGrid', {
|
|||||||
disabled: false,
|
disabled: false,
|
||||||
hideHeaders: true,
|
hideHeaders: true,
|
||||||
|
|
||||||
|
editorConfig: {}, // default config passed to editor
|
||||||
|
|
||||||
|
run_editor: function() {
|
||||||
|
var me = this;
|
||||||
|
|
||||||
|
var sm = me.getSelectionModel();
|
||||||
|
var rec = sm.getSelection()[0];
|
||||||
|
if (!rec) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var rows = me.rows;
|
||||||
|
var rowdef = rows[rec.data.key];
|
||||||
|
if (!rowdef.editor) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var win;
|
||||||
|
var config;
|
||||||
|
if (Ext.isString(rowdef.editor)) {
|
||||||
|
config = Ext.apply({
|
||||||
|
confid: rec.data.key,
|
||||||
|
}, me.editorConfig);
|
||||||
|
win = Ext.create(rowdef.editor, config);
|
||||||
|
} else {
|
||||||
|
config = Ext.apply({
|
||||||
|
confid: rec.data.key,
|
||||||
|
}, me.editorConfig);
|
||||||
|
Ext.apply(config, rowdef.editor);
|
||||||
|
win = Ext.createWidget(rowdef.editor.xtype, config);
|
||||||
|
win.load();
|
||||||
|
}
|
||||||
|
|
||||||
|
win.show();
|
||||||
|
win.on('destroy', me.reload, me);
|
||||||
|
},
|
||||||
|
|
||||||
|
reload: function() {
|
||||||
|
var me = this;
|
||||||
|
me.rstore.load();
|
||||||
|
},
|
||||||
|
|
||||||
getObjectValue: function(key, defaultValue) {
|
getObjectValue: function(key, defaultValue) {
|
||||||
var me = this;
|
var me = this;
|
||||||
var rec = me.store.getById(key);
|
var rec = me.store.getById(key);
|
||||||
|
Loading…
Reference in New Issue
Block a user