I am overiding the HeaderContextMenuItem for all of my list grids
now when adding a submenu my click menu argument doesnt have the grid object as my main menu does
am i missing something here?
now when adding a submenu my click menu argument doesnt have the grid object as my main menu does
Code:
grid.getHeaderContextMenuItems = function(fieldNum){
var wsHeaderContextMenuItems = this.Super('getHeaderContextMenuItems', fieldNum);
wsHeaderContextMenuItems[wsHeaderContextMenuItems.length] = {isSeparator :true};
wsHeaderContextMenuItems[wsHeaderContextMenuItems.length] = {title: i18n.t("saveColumnCustom"),
click: function(target, item, menu)
{
var viewStates = isc.DataSource.getDataSource("ViewStates");
if ( !viewStates )
alert("missing ViewStates DS!!");
else
{
viewStates.fetchData(
{userKey:uKey , listGridName: menu.grid.ID},
function(dsResponse,data,dsRequest) {
if (data.length > 0 )
{
data[0].userKey = uKey;
data[0].viewState = menu.grid.getViewState();
data[0].listGridName = menu.grid.ID;
viewStates.updateData(data[0]);
}else{
var nRec={};
nRec.userKey = uKey;
nRec.viewState = menu.grid.getViewState();
nRec.listGridName = menu.grid.ID;
viewStates.addData(nRec);
}
}
);
}
},
icon:"[SKIN]/../actions/save.png"
};
// ADD EXPORTING Menu and SubMenu
wsHeaderContextMenuItems[wsHeaderContextMenuItems.length] =
{title: i18n.t("exportAs"), icon: "[SKIN]/../actions/download.png",grid:this, submenu: [
{title: i18n.t("XML"), click: function(target, item, menu){
menu.grid.exportData({ exportAs: 'xml',exportDisplay: 'download'});
}
},
{title: i18n.t("CSV"), click: "menu.grid.exportData({ exportAs: 'csv',exportDisplay: 'download'})"},
{title: i18n.t("Excel"), click: "menu.grid.exportData({ exportAs: 'xls',exportDisplay: 'download'})"}
]};
return wsHeaderContextMenuItems;
};
Comment