@Override public int getWidth(@Nonnull final Element element, @Nonnull final T item) { TextRenderer renderer = element.getRenderer(TextRenderer.class); if (renderer == null) { log.warning( "you're using the ListBoxViewConverterSimple but there is no TextRenderer on the listBoxElement." + "You've probably changed the item template but did not provided your own " + "ListBoxViewConverter to the ListBox."); return 0; } final RenderFont font = renderer.getFont(); if (font != null) { final String resultText = element.getNifty().specialValuesReplace(item.toString()); return font.getWidth(resultText); } return 0; } }
@Override public void setStyle(@Nonnull final String style) { final Element element = getElement(); if (element != null) { element.setStyle(element.getNifty().specialValuesReplace(style)); } }
@Override public int getWidth(@Nonnull final Element element, @Nonnull final T item) { TextRenderer renderer = element.getRenderer(TextRenderer.class); if (renderer == null) { log.warning( "you're using the ListBoxViewConverterSimple but there is no TextRenderer on the listBoxElement." + "You've probably changed the item template but did not provided your own " + "ListBoxViewConverter to the ListBox."); return 0; } final RenderFont font = renderer.getFont(); if (font != null) { final String resultText = element.getNifty().specialValuesReplace(item.toString()); return font.getWidth(resultText); } return 0; } }
/** * Build a element * * @return the element created */ public Element build(@Nonnull final Element parent) { ElementType type = buildElementType(); Element result = parent.getNifty().createElementFromType(parent.getScreen(), parent, type); parent.layoutElements(); return result; }
/** * Build an element in a specified position in parent element list * * @return the Element created */ @Nonnull public Element build(@Nonnull final Element parent, final int index) { Screen screen = parent.getScreen(); ElementType type = buildElementType(); Element result = parent.getNifty().createElementFromType(screen, parent, type, index); screen.layoutLayers(); return result; }
public void remove() { popupElements.remove(element); focusHandler.popState(); if (closeNotify != null) { closeNotify.perform(); } element.getNifty().internalPopupRemoved(element.getId()); } }
public SystemMessageState(Element systemMessages, boolean enabled) { this.systemMessagesQueue = systemMessages; this.hud = systemMessagesQueue.getNifty().getScreen(HUD_SCREEN_ID); // can be removed if system messages are correctly detached after quiting the game (like going back to main menu) this.removeAllMessages(); super.setEnabled(enabled); }
@Override public void onFocus(final boolean getFocus) { final Element element = getElement(); if (element != null) { String id = element.getId(); if (id != null) { if (getFocus) { element.getNifty().publishEvent(id, new FocusGainedEvent(this, this)); } else { element.getNifty().publishEvent(id, new FocusLostEvent(this, this)); } } } }
public void addMessageIcon(MessageType type, String text) { final String icon = String.format("Textures/GUI/Tabs/Messages/mt-%s-$index.png", type.toString().toLowerCase()); final String normalIcon = ConversionUtils.getCanonicalAssetKey(icon.replace("$index", "00")); final String hoverIcon = ConversionUtils.getCanonicalAssetKey(icon.replace("$index", "01")); final String activeIcon = ConversionUtils.getCanonicalAssetKey(icon.replace("$index", "02")); Element systemMessage = new ControlBuilder("sysmessage-" + NiftyIdCreator.generate(), "systemMessage"){{ parameter("image", normalIcon); parameter("hoverImage", hoverIcon); parameter("activeImage", activeIcon); set("text", text); }}.build(systemMessagesQueue.getNifty(), this.hud, systemMessagesQueue); systemMessage.show(); }
private void initialize() { consoleCommands = new ConsoleCommands(console.getElement().getNifty(), console); creatures = stateManager.getState(GameState.class).getLevelData().getCreatureList(); ConsoleCommand parameterCommand = new ParameterCommand(); for (ParameterCommands parameterCmd : ParameterCommands.values()) { if (parameterCmd.equals(ParameterCommands.SPAWN_CREATURE)) { // make it easier to spawn them by creating an autocompletion creatures.forEach(creature -> { consoleCommands.registerCommand(parameterCmd.toString().toLowerCase() + " " + creature.getName().toLowerCase().replace(" ", "_"), parameterCommand); }); } else { consoleCommands.registerCommand(parameterCmd.toString().toLowerCase(), parameterCommand); } } ConsoleCommand simpleCommand = new SimpleCommand(); for (SimpleCommands simpleCmd : SimpleCommands.values()) { consoleCommands.registerCommand(simpleCmd.toString().toLowerCase(), simpleCommand); } consoleCommands.enableCommandCompletion(true); }
final Label displayLabel = text.findNiftyControl("#label", Label.class); if (displayLabel == null) { Screen screen = text.getNifty().getCurrentScreen(); if (screen == null) { log.warning("Can't create content label while there is no active screen."); builder.textHAlign(ElementBuilder.Align.Left); builder.width(SizeValue.wildcard()); builder.build(text.getNifty(), screen, text);
final Label displayLabel = text.findNiftyControl("#label", Label.class); if (displayLabel == null) { Screen screen = text.getNifty().getCurrentScreen(); if (screen == null) { log.warning("Can't create content label while there is no active screen."); builder.textHAlign(ElementBuilder.Align.Left); builder.width(SizeValue.wildcard()); builder.build(text.getNifty(), screen, text);
/** * Display a Boolean data in cell * * @param element the cell element * @param item the row item * @param itemData the cell data */ protected void displayBoolean(Element element, T item, boolean itemData) { ImageRenderer renderer = element.getRenderer(ImageRenderer.class); if (itemData) { NiftyImage img = element.getNifty().createImage("Textures/Tick-1.png", true); renderer.setImage(img); element.setConstraintWidth(new SizeValue(img.getWidth() + "px")); element.setConstraintHeight(new SizeValue(img.getHeight() + "px")); element.getParent().layoutElements(); } else { renderer.setImage(null); } } }
/** * render it. * * @param element the widget we're connected to * @param r the renderDevice we should use */ @Override public void render(@Nonnull final Element element, @Nonnull final NiftyRenderEngine r) { if (element.getNifty().isDebugOptionPanelColors()) { r.saveStates(); r.setColor(getDebugColor()); r.renderQuad(element.getX(), element.getY(), element.getWidth(), element.getHeight()); r.restoreStates(); return; } if (backgroundColor != null) { r.saveStates(); if (!r.isColorChanged()) { if (r.isColorAlphaChanged()) { r.setColorIgnoreAlpha(backgroundColor); } else { r.setColor(backgroundColor); } } r.renderQuad(element.getX(), element.getY(), element.getWidth(), element.getHeight()); r.restoreStates(); } }