I’m trying to change a popup menu position.
Here is the code:
this.menuPopup = this.nifty.createPopup("contextMenu");
this.menuPopup.setConstraintX(new SizeValue("250px"));
this.menuPopup.setConstraintY(new SizeValue("250px"));
Menu popupMenu = menuPopup.findNiftyControl("#menu", Menu.class);
popupMenu.addMenuItem("Click me!", new MenuItem("menuItemid", "blah blah"));
popupMenu.addMenuItem("Item12", "Item12");
popupMenu.addMenuItem("Item13", "Item13");
this.screen.layoutLayers();
This is the xml:
<?xml version="1.0" encoding="UTF-8"?><popup id="contextMenu" childLayout="absolute" controller="net.medievalsoul.screen.MainScreenController">
<interact onClick="closeContextMenu()" onSecondaryClick="closeContextMenu()" onTertiaryClick="closeContextMenu()" />
<control id="#menu" name="niftyMenu" x="400"/>
</popup>
<screen id="mainScreen" controller="net.medievalsoul.screen.MainScreenController">
<layer id="mainLayer" childLayout="center">
</layer>
</screen>
But the context menu always appears in the top left corner.
Thanks in advance!