ucan-ext-js-kitchen-sink
Version:
my-ext-gen-app description for Ext JS app MyExtGenApp
88 lines (72 loc) • 2.21 kB
JavaScript
Ext.define('UCAN.common.dialog.SimpleErrorDialogView', {
extend: 'Ext.Dialog',
alias: 'widget.error-dialog',
xtype: 'simpleErrorDialogView',
cls: 'js-ucan-error-dialog-view ucan-simple-error-dialog-view',
title: {
cls: 'ucan-simple-error-dialog-view-title'
},
config: {
errorTitle: null,
errorMessage: null,
errorAction: null,
options: null
},
twoWayBindable: {
errorTitle: false,
errorMessage: false,
errorAction: false,
options: false
},
publishes: ['errorTitle', 'errorMessage', 'errorAction', 'options'],
closable: true,
maximizable: true,
maxWidth: '95%',
maxHeight: '95%',
layout: 'vbox',
items: [
{
xtype: 'displayfield',
bodyAlign: 'center',
cls: 'js-ucan-error-dialog-text ucan-simple-error-dialog-view-text'
},
{
xtype: 'list',
cls: 'js-ucan-error-dialog-view-option-container ucan-error-dialog-view-option-container',
itemTpl: new Ext.XTemplate(
'{[this.createEntryDescr(values)]}',
{
createEntryDescr: function(values) {
return values.name
+ ' ('
+ values.descr
+ ')';
}
}),
listeners: {
childtap: function(_list, location) {
location.record.data.call();
}
}
}
],
// region Update Attributes
updateErrorTitle: function(config) {
this.setTitle(config);
},
updateErrorMessage: function(config) {
this.getErrorDialogText().setHtml(config);
},
updateOptions: function(config) {
this.getOptionContainer().updateData(config);
},
// endregion
// region Getter
getOptionContainer: function() {
return this.down('[cls~=js-ucan-error-dialog-view-option-container]');
},
getErrorDialogText: function() {
return this.down('[cls~=js-ucan-error-dialog-text]');
}
// endregion
})