Добрый день, по клику на шапку колонки вызывается функция onClick в label.js, затем идёт проверка подписан ли объект на данный эвент через this.fireEvent("click", this). В Label.hasListener подписки на "click" нету и ничего не происходит. Пожалуйста подскажите, как забиндить метод на click и как передать нужные аргументы в этот метод.
Нашёл место где создаются лейблы, но как я понял, через конфиг можно передать только свойства объекта.
/**
* Rerenders grid header.
* @protected
*/
reRenderGridHeader: function() {
var captionContainer = this.Ext.getCmp("gridCaptionContainer");
var columnsConfigs = this.getGridHeaderConfigs();
captionContainer.items.clear();
this.Terrasoft.each(columnsConfigs, function(columnConfig) {
var label = this.Ext.create("Terrasoft.Label", columnConfig);
captionContainer.items.add(columnConfig.id, label);
}, this);
captionContainer.reRender();
},
/**
* Returns config on caption column.
* @override
* @param {Object} columnInfo
* @param {String} columnInfo.name Column name.
* @param {Number} columnInfo.colSpan Column size.
* @param {String} columnInfo.caption Column caption.
* @return {Object} Column control config.
*/
getCaptionControlConfig: function(columnInfo) {
var className = "Label";
var id = ["caption", this._formatColumnName(columnInfo.name), className.toLowerCase()].join("-");
var config = {
className: "Terrasoft." + className,
id: id,
selectors: {wrapEl: "#" + id},
markerValue: columnInfo.name
};
config.caption = columnInfo.caption;
config.classes = {
labelClass: ["grid-cols-" + columnInfo.colSpan,
"gridRow" + columnInfo.name + "LabelCaption"]
};
return config;
},