I am trying to popup a context menu based on the user data
I ahve a xml similart to this
<item text=“no service udp-small-servers”
id=“nonEditableCommand~address~1” child=“0”>
no service udp-small-servers
!
<item text=“hostname
uxx123456
"
id=“template~nextAddress~2~address~address” child=“1”>
uxx123456
<item text=“hostname” id=“nonEditableCommand~address~3”
child=“0”>
<item text=”
uxx123456
"
id=“nonEditableCommand~address~3” child=“0”>
…
…
I want to context menu based on the userdata clicked.
meaning one context menu for noneditable command and a seperate context menu for Editable comman, based which is clicked
I am trying to get userdata but I dont undertsand what should i write for name paramater.
I wrote a function as follows
function changeMenu(treeItemId)
{
var selctedUserData = null;
var selctedNodeText = tree.getUserData(treeItemId,XXXXXXXXXXX);
alert(‘you have clicked on::’+selctedNodeText);
if (selctedNodeText == ‘nonEditableCommand’)
{
alert(‘context menu for nonEditableCommand’);
aMenu.menu.showItem(‘NEC_Insert After’);
aMenu.menu.showItem(‘NEC_Insert Before’);
aMenu.menu.showItem(‘NEC_Delete’);
}
else if (selctedNodeText == ‘editableCommand’)
{
// alert(‘context menu for EditableCommand’);
aMenu.menu.showItem(‘EC_Insert After’);
aMenu.menu.showItem(‘EC_Insert Before’);
aMenu.menu.showItem(‘EC_Delete’);
}
}
can you suggest me wat should I write at XXXXXXX
var selctedNodeText = tree.getUserData(treeItemId,XXXXXXXXXXX);
to get the userdata name
Thanks
With your current XML value it may be written as
var selectedNodeText = (typeOf tree.getUserData(treeItemId,“nonEditableCommand”) != “undefined”)?“nonEditableCommand”:“editableCommand”;
but its quite a complex on my opinion, if you will slightly update used XML it may be used much more clean
<item text=“hostname” id=“nonEditableCommand~address~3”
child=“0”>
nonEditableField
<item text="
uxx123456
"
id=“nonEditableCommand~address~3” child=“0”>
editableField
var selectedNodeText = tree.getUserData(treeItemId,“cMenu”);