ItEr22S04ArquitecturaServidorItEr21S04: Add support for printing i18n texts that need extra parameters
This commit is contained in:
parent
7b9070b61b
commit
5fae23e7e1
5 changed files with 149 additions and 5 deletions
|
|
@ -25,7 +25,28 @@ public class I18nHelper {
|
|||
return i18n;
|
||||
}
|
||||
|
||||
public static String _(String str) {
|
||||
return getI18n().tr(str);
|
||||
public static String _(String text) {
|
||||
return getI18n().tr(text);
|
||||
}
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1) {
|
||||
return getI18n().tr(text, o1);
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1, Object o2) {
|
||||
return getI18n().tr(text, o1, o2);
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1, Object o2, Object o3) {
|
||||
return getI18n().tr(text, o1, o2, o3);
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1, Object o2, Object o3,
|
||||
Object o4) {
|
||||
return getI18n().tr(text, o1, o2, o3, o4);
|
||||
}
|
||||
|
||||
public static String _(String text, Object[] objects) {
|
||||
return getI18n().tr(text, objects);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,4 +28,25 @@ public class I18nHelper {
|
|||
public static String _(String str) {
|
||||
return getI18n().tr(str);
|
||||
}
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1) {
|
||||
return getI18n().tr(text, o1);
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1, Object o2) {
|
||||
return getI18n().tr(text, o1, o2);
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1, Object o2, Object o3) {
|
||||
return getI18n().tr(text, o1, o2, o3);
|
||||
}
|
||||
|
||||
public static String _(String text, Object o1, Object o2, Object o3,
|
||||
Object o4) {
|
||||
return getI18n().tr(text, o1, o2, o3, o4);
|
||||
}
|
||||
|
||||
public static String _(String text, Object[] objects) {
|
||||
return getI18n().tr(text, objects);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,88 @@
|
|||
package org.navalplanner.web.common.components;
|
||||
|
||||
import org.navalplanner.web.I18nHelper;
|
||||
import org.zkoss.zk.ui.HtmlMacroComponent;
|
||||
|
||||
/**
|
||||
* ZK macro component for translating texts created dinamically, that means,
|
||||
* those which need one or more parameters
|
||||
*
|
||||
* @author Diego Pino García <dpino@igalia.com>
|
||||
*/
|
||||
public class I18n extends HtmlMacroComponent {
|
||||
|
||||
public String value;
|
||||
|
||||
public String arg1;
|
||||
|
||||
public String arg2;
|
||||
|
||||
public String arg3;
|
||||
|
||||
public String arg4;
|
||||
|
||||
public I18n() {
|
||||
|
||||
}
|
||||
|
||||
public String getArg1() {
|
||||
return arg1;
|
||||
}
|
||||
|
||||
public void setArg1(String arg1) {
|
||||
this.arg1 = arg1;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getArg2() {
|
||||
return arg2;
|
||||
}
|
||||
|
||||
public void setArg2(String arg2) {
|
||||
this.arg2 = arg2;
|
||||
}
|
||||
|
||||
public String getArg3() {
|
||||
return arg3;
|
||||
}
|
||||
|
||||
public void setArg3(String arg3) {
|
||||
this.arg3 = arg3;
|
||||
}
|
||||
|
||||
public String getArg4() {
|
||||
return arg4;
|
||||
}
|
||||
|
||||
public void setArg4(String arg4) {
|
||||
this.arg4 = arg4;
|
||||
}
|
||||
|
||||
public String getI18n() {
|
||||
if (arg1 != null && arg2 != null && arg3 != null && arg4 != null) {
|
||||
return I18nHelper._(value, arg1, arg2, arg3, arg4);
|
||||
}
|
||||
if (arg1 != null && arg2 != null && arg3 != null) {
|
||||
return I18nHelper._(value, arg1, arg2, arg3);
|
||||
}
|
||||
if (arg1 != null && arg2 != null) {
|
||||
return I18nHelper._(value, arg1, arg2);
|
||||
}
|
||||
if (arg1 != null) {
|
||||
return I18nHelper._(value, arg1);
|
||||
}
|
||||
|
||||
return I18nHelper._(value);
|
||||
}
|
||||
|
||||
public void afterCompose() {
|
||||
super.afterCompose();
|
||||
}
|
||||
}
|
||||
|
|
@ -11,4 +11,10 @@
|
|||
<macro-uri>/common/components/twowayselector.zul</macro-uri>
|
||||
</component>
|
||||
|
||||
</language-addon>
|
||||
<component>
|
||||
<component-name>i18n</component-name>
|
||||
<component-class>org.navalplanner.web.common.components.I18n</component-class>
|
||||
<macro-uri>/common/components/i18n.zul</macro-uri>
|
||||
</component>
|
||||
|
||||
</language-addon>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,8 @@
|
|||
<zk>
|
||||
<zscript><![CDATA[
|
||||
top = self;
|
||||
]]>
|
||||
</zscript>
|
||||
|
||||
<label value="@{top.i18n}" />
|
||||
</zk>
|
||||
Loading…
Add table
Reference in a new issue