@SuppressWarnings("unchecked") @Override public void onEvent(final String topic, final ListBoxSelectionChangedEvent data) { final Object selectedItem = getSelectedItem(data.getSelection()); ListBoxControl listBoxControl = (ListBoxControl) listBox; listBoxControl .getViewConverter() .display(dropDown.getElement().findElementByName("#text"), selectedItem); final int selectedItemIndex = getSelectedIndex(data); if (screen.isActivePopup(popupInstance)) { dropDown .getElement() .getControl(DropDownControl.class) .close( new EndNotify() { @Override public void perform() { nifty.publishEvent( dropDown.getId(), new DropDownSelectionChangedEvent(dropDown, selectedItem, selectedItemIndex)); } }); } else { nifty.publishEvent( dropDown.getId(), new DropDownSelectionChangedEvent(dropDown, selectedItem, selectedItemIndex)); } }
@Override public boolean keyEvent(final NiftyInputEvent inputEvent) { if (inputEvent == NiftyInputEvent.ConsoleToggle) { if (screen.isActivePopup(consolePopup)) { nifty.closePopup(consolePopup.getId()); } else { nifty.showPopup(screen, consolePopup.getId(), null); } return true; } return false; }