Добрый день, коллеги!
Подскажите , кто знает, вот есть кнопка в верхнем правом углу , на любой странице, кнопка профиля, при нажатие на неё открывается меню , как в это меню добавить свою запись\кнопку ?
Нравится
Замещаете MainHeaderSchema и переопределяете loadProfileButtonMenu и вставляете необходимые код, который будет вызывать пользовательский метод
Спасибо большое, это именно тот модуль. Но что-то пошло не так ...
http://pixs.ru/showimage/Bezimyanni_3822167_22664458.png
Пропал в целом хедер страницы, и кнопки профиля. Я создал замещающую страницу, скопировал код который был, вставил, и изменил этот метод, просто добавил кнопку ещё одну, и метод для неё, который открывал бы страницу редактирования. И вот так получилось.
Такое впечатление что при наследовании этой страницы, потерялись картинки ... Такое было замечено в 7.8 с кепшинами, там это решить просто, пробел написать у каждой локалайзыбыл стринг, и все они появятся ... А как быть с картинками ?
"Заставный Роман" написал: Я создал замещающую страницу, скопировал код который был...
Т.е. вы вставили код из родительской схемы?
Вам нужно просто добавить новый код в замещающую схему, например вот так
[javascript]
define("MainHeaderSchema", [], function() {
return {
methods: {
// обработчик нажатия на новый пункт меню
myClickMethod: function() {
window.console.log("работает");
},
//перегрузка родительского метода
loadProfileButtonMenu: function() {
//вызов родительского метода
this.callParent();
//пользовательская реализация
var profileMenuCollection = this.get("ProfileMenuCollection");
//сепаратор
profileMenuCollection.addItem(this.Ext.create("Terrasoft.BaseViewModel", {
values: {
Type: "Terrasoft.MenuSeparator",
Caption: ""
}
}));
//новый пункт меню
//используются существующие картинки и строки
profileMenuCollection.addItem(this.Ext.create("Terrasoft.BaseViewModel", {
values: {
Caption: this.get("Resources.Strings.ProfileMenuItemCaption"),
Click: {
bindTo: "myClickMethod"
},
MarkerValue: this.get("Resources.Strings.ProfileMenuItemCaption"),
ImageConfig: this.get("Resources.Images.ContactEmptyPhoto")
}
}));
}
}
};
});
[/javascript]
После сохранения схемы и обновления страницы приложения полцчится так, как на прикрепленной картинке
"Симута Роман Русланович" написал:Т.е. вы вставили код из родительской схемы?
Спасибо вам большое! Сейчас попробовал оставить только необходимые методы, и все заработало. Но был как-то случай, что модуль отказывался работать полноценно, пока весь код из родительской схемы не перенёс в замещёную ...