Yes.
1. UniDBLookupComboBox4.ClientEvents.ExtEvents -> afterrender
The main modified code (if you analyze it, you can simplify the code even more)...
ariaSelectable: a.ariaSelectable//,
//width: parts.length * 150
2. UniDBLookupComboBox4.ClientEvents.UniEvents ->
function beforeInit(sender, config)
{
config.store.cmp = sender;
}
3. UniDBLookupComboBox4.ClientEvents.ExtEvents ->
function store.load(sender, records, successful, operation, eOpts)
{
var parts;
this.each(function(record) {
var val = record.get('val');
parts = val.split(' - ');
for (var i = 0; i < parts.length; i++) {
record.set('field' + (i + 1), parts[i]);
}
});
if (parts.length > 0) {
this.cmp.getPicker().setWidth(200 * parts.length)
} else {
//this.cmp.getPicker().setWidth(150)
}
}