diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/elements/FormLink.java b/src/main/java/org/olat/core/gui/components/form/flexible/elements/FormLink.java index d601472f981d66eb23664106656ad9afbe2c3797..ce07f6e5ef996f6aadbea81f1ba4799c7a7e7550 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/elements/FormLink.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/elements/FormLink.java @@ -78,7 +78,8 @@ public interface FormLink extends FormItem { * @param i18nKey */ public void setLinkTitle(String i18nKey); - + public String getLinkTitleText(); + /** * @param true: set link to active state (only render issue); false set to not active (default) */ diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/FormLinkImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/FormLinkImpl.java index 7c3fe42c5916822b6f1b5b48fda9e7327e27f9e8..27f1a5cc541c12b89be0347117710c2ecda0cbaf 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/FormLinkImpl.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/FormLinkImpl.java @@ -35,6 +35,7 @@ import org.olat.core.gui.components.form.flexible.impl.FormItemImpl; import org.olat.core.gui.components.link.FormLinkFactory; import org.olat.core.gui.components.link.Link; import org.olat.core.gui.control.Event; +import org.olat.core.gui.translator.Translator; import org.olat.core.util.StringHelper; import org.olat.core.util.ValidationStatus; @@ -190,6 +191,14 @@ public class FormLinkImpl extends FormItemImpl implements FormLink { return cmd; } + @Override + public void setTranslator(Translator translator) { + if(this.component != null) { + this.component.setTranslator(translator); + } + super.setTranslator(translator); + } + @Override public void setElementCssClass(String elementCssClass) { if(component != null) { @@ -284,6 +293,20 @@ public class FormLinkImpl extends FormItemImpl implements FormLink { } } + @Override + public String getLinkTitleText() { + String title = null; + if (component != null) { + title = component.getCustomDisplayText(); + if (title == null && getTranslator() != null) { + if (StringHelper.containsNonWhitespace(component.getI18n())) { + title = getTranslator().translate(component.getI18n()); + } + } + } + return title; + } + @Override public void setActive(boolean isActive) { if (component != null) {