From 20aca47bed02686d969aa46cf65cc9fb1085b78d Mon Sep 17 00:00:00 2001 From: Martin Karing Date: Sun, 30 Sep 2012 14:39:20 +0200 Subject: [PATCH] Added method to label to directly enable line wrapping from the builder/xml --- .../nifty/controls/label/LabelControl.java | 129 +++++++++--------- .../controls/label/builder/LabelBuilder.java | 48 ++++--- 2 files changed, 92 insertions(+), 85 deletions(-) diff --git a/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/LabelControl.java b/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/LabelControl.java index c9fd26f68..19a90f92a 100644 --- a/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/LabelControl.java +++ b/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/LabelControl.java @@ -1,63 +1,66 @@ -package de.lessvoid.nifty.controls.label; - -import java.util.Properties; - -import de.lessvoid.nifty.Nifty; -import de.lessvoid.nifty.controls.AbstractController; -import de.lessvoid.nifty.controls.Label; -import de.lessvoid.nifty.elements.Element; -import de.lessvoid.nifty.elements.render.TextRenderer; -import de.lessvoid.nifty.input.NiftyInputEvent; -import de.lessvoid.nifty.screen.Screen; -import de.lessvoid.nifty.tools.Color; -import de.lessvoid.xml.xpp3.Attributes; - -/** - * @deprecated Please directly use {@link de.lessvoid.nifty.controls.Label} when accessing NiftyControls. - */ -@Deprecated -public class LabelControl extends AbstractController implements Label { - - @Override - public void bind( - final Nifty nifty, - final Screen screen, - final Element element, - final Properties parameter, - final Attributes controlDefinitionAttributes) { - super.bind(element); - } - - @Override - public void onStartScreen() { - } - - @Override - public boolean inputEvent(final NiftyInputEvent inputEvent) { - return false; - } - - @Override - public void setText(final String text) { - getTextRenderer().setText(text); - } - - @Override - public String getText() { - return getTextRenderer().getOriginalText(); - } - - @Override - public void setColor(final Color color) { - getTextRenderer().setColor(color); - } - - @Override - public Color getColor() { - return getTextRenderer().getColor(); - } - - private TextRenderer getTextRenderer() { - return getElement().getRenderer(TextRenderer.class); - } -} +package de.lessvoid.nifty.controls.label; + +import java.util.Properties; + +import de.lessvoid.nifty.Nifty; +import de.lessvoid.nifty.controls.AbstractController; +import de.lessvoid.nifty.controls.Label; +import de.lessvoid.nifty.elements.Element; +import de.lessvoid.nifty.elements.render.TextRenderer; +import de.lessvoid.nifty.input.NiftyInputEvent; +import de.lessvoid.nifty.screen.Screen; +import de.lessvoid.nifty.tools.Color; +import de.lessvoid.xml.xpp3.Attributes; + +/** + * @deprecated Please directly use {@link de.lessvoid.nifty.controls.Label} when accessing NiftyControls. + */ +@Deprecated +public class LabelControl extends AbstractController implements Label { + + @Override + public void bind( + final Nifty nifty, + final Screen screen, + final Element element, + final Properties parameter, + final Attributes controlDefinitionAttributes) { + bind(element); + + final boolean wrap = controlDefinitionAttributes.getAsBoolean("wrap", false); + getTextRenderer().setLineWrapping(wrap); + } + + @Override + public void onStartScreen() { + } + + @Override + public boolean inputEvent(final NiftyInputEvent inputEvent) { + return false; + } + + @Override + public void setText(final String text) { + getTextRenderer().setText(text); + } + + @Override + public String getText() { + return getTextRenderer().getOriginalText(); + } + + @Override + public void setColor(final Color color) { + getTextRenderer().setColor(color); + } + + @Override + public Color getColor() { + return getTextRenderer().getColor(); + } + + private TextRenderer getTextRenderer() { + return getElement().getRenderer(TextRenderer.class); + } +} diff --git a/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/builder/LabelBuilder.java b/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/builder/LabelBuilder.java index aeeca1083..59722f2ee 100644 --- a/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/builder/LabelBuilder.java +++ b/nifty-controls/src/main/java/de/lessvoid/nifty/controls/label/builder/LabelBuilder.java @@ -1,22 +1,26 @@ -package de.lessvoid.nifty.controls.label.builder; - -import de.lessvoid.nifty.builder.ControlBuilder; - -public class LabelBuilder extends ControlBuilder { - public LabelBuilder() { - super("label"); - } - - public LabelBuilder(final String id) { - super(id, "label"); - } - - public LabelBuilder(final String id, final String text) { - super(id, "label"); - text(text); - } - - public void label(final String label) { - text(label); - } -} +package de.lessvoid.nifty.controls.label.builder; + +import de.lessvoid.nifty.builder.ControlBuilder; + +public class LabelBuilder extends ControlBuilder { + public LabelBuilder() { + super("label"); + } + + public LabelBuilder(final String id) { + super(id, "label"); + } + + public LabelBuilder(final String id, final String text) { + super(id, "label"); + text(text); + } + + public void label(final String label) { + text(label); + } + + public void wrap(final boolean enabled) { + set("wrap", Boolean.toString(enabled)); + } +}