This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository jaxx. See http://git.nuiton.org/jaxx.git commit 125e1375f6e971cf08269a2e0d8220ee44a9cf58 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sun Nov 30 09:55:55 2014 +0100 move number editor + some common classes --- jaxx-widgets-common/pom.xml | 50 ------- .../nuiton/jaxx/widgets/DecoratorPopupHandler.java | 164 +++++++++++++++++++++ .../jaxx/widgets/JaxxWidgetRuntimeException.java | 28 ++++ .../java/org/nuiton/jaxx/widgets/ModelToBean.java | 2 +- .../MutateOnConditionalPropertyChangeListener.java | 27 +++- .../i18n/jaxx-widgets-common_en_GB.properties | 8 + .../i18n/jaxx-widgets-common_es_ES.properties | 8 + .../i18n/jaxx-widgets-common_fr_FR.properties | 8 + jaxx-widgets-number/pom.xml | 68 ++++----- .../nuiton/jaxx/widgets}/number/NumberEditor2.css | 0 .../nuiton/jaxx/widgets}/number/NumberEditor2.jaxx | 0 .../jaxx/widgets}/number/NumberEditor2Config.java | 2 +- .../jaxx/widgets}/number/NumberEditor2Handler.java | 2 +- .../jaxx/widgets}/number/NumberEditor2Model.java | 2 +- .../i18n/jaxx-widgets-number_en_GB.properties | 14 ++ .../i18n/jaxx-widgets-number_es_ES.properties | 14 ++ .../i18n/jaxx-widgets-number_fr_FR.properties | 14 ++ 17 files changed, 313 insertions(+), 98 deletions(-) diff --git a/jaxx-widgets-common/pom.xml b/jaxx-widgets-common/pom.xml index 356e6f4..20c9642 100644 --- a/jaxx-widgets-common/pom.xml +++ b/jaxx-widgets-common/pom.xml @@ -48,76 +48,26 @@ </dependency> <dependency> - <groupId>org.swinglabs.swingx</groupId> - <artifactId>swingx-common</artifactId> - </dependency> - - <dependency> - <groupId>org.swinglabs.swingx</groupId> - <artifactId>swingx-core</artifactId> - </dependency> - - <dependency> - <groupId>org.swinglabs.swingx</groupId> - <artifactId>swingx-autocomplete</artifactId> - </dependency> - - <dependency> <groupId>org.nuiton.i18n</groupId> <artifactId>nuiton-i18n</artifactId> </dependency> <dependency> <groupId>org.nuiton</groupId> - <artifactId>nuiton-utils</artifactId> - </dependency> - - <dependency> - <groupId>org.nuiton</groupId> <artifactId>nuiton-decorator</artifactId> </dependency> <dependency> - <groupId>org.nuiton</groupId> - <artifactId>nuiton-converter</artifactId> - </dependency> - - <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </dependency> <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-lang3</artifactId> - </dependency> - - <dependency> - <groupId>commons-primitives</groupId> - <artifactId>commons-primitives</artifactId> - </dependency> - - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-collections4</artifactId> - </dependency> - - <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </dependency> <dependency> - <groupId>commons-beanutils</groupId> - <artifactId>commons-beanutils</artifactId> - </dependency> - - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - </dependency> - - <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <scope>provided</scope> diff --git a/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/DecoratorPopupHandler.java b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/DecoratorPopupHandler.java new file mode 100644 index 0000000..8ae145c --- /dev/null +++ b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/DecoratorPopupHandler.java @@ -0,0 +1,164 @@ +package org.nuiton.jaxx.widgets; + +import jaxx.runtime.swing.JAXXButtonGroup; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.nuiton.decorator.MultiJXPathDecorator; + +import javax.swing.AbstractButton; +import javax.swing.ButtonGroup; +import javax.swing.JComponent; +import javax.swing.JLabel; +import javax.swing.JPopupMenu; +import javax.swing.JRadioButtonMenuItem; +import javax.swing.JSeparator; +import javax.swing.SwingUtilities; +import java.awt.Dimension; +import java.beans.Introspector; + +import static org.nuiton.i18n.I18n.n; +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 11/30/14. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.18 + */ +public abstract class DecoratorPopupHandler implements Runnable { + + /** Logger. */ + public static final Log log = LogFactory.getLog(DecoratorPopupHandler.class); + + public static final String DEFAULT_POPUP_LABEL = n("bean.popup.label"); + + public static final String DEFAULT_SELECTED_TOOLTIP = n("bean.sort.on"); + + public static final String DEFAULT_NOT_SELECTED_TOOLTIP = n("bean.sort.off"); + + public abstract JPopupMenu getPopup(); + + public abstract JComponent getInvoker(); + + @Override + public void run() { + + updatePopup(); + + Dimension dim = getPopup().getPreferredSize(); + + JComponent invoker = getInvoker(); + getPopup().show( + invoker, + (int) (invoker.getPreferredSize().getWidth() - dim.getWidth()), + invoker.getHeight() + ); + } + + /** Toggle the popup visible state. */ + public void togglePopup() { + boolean newValue = !getPopup().isVisible(); + + if (log.isTraceEnabled()) { + log.trace(newValue); + } + + if (!newValue) { + if (getPopup() != null) { + getPopup().setVisible(false); + } + return; + } + SwingUtilities.invokeLater(this); + } + + protected void updatePopup() { + getPopup().pack(); + } + + /** + * Creation de l'ui pour modifier le décorateur. + * + * @param selectedTip + * @param notSelectedTip + * @param i18nPrefix + * @param title + * @param indexes + * @param popupLabel + * @param sortUp + * @param sortDown + * @param decorator le decorateur a utiliser + */ + public void preparePopup(String selectedTip, + String notSelectedTip, + String i18nPrefix, + String title, + ButtonGroup indexes, + JSeparator popupSeparator, + JLabel popupLabel, + AbstractButton sortUp, + AbstractButton sortDown, + MultiJXPathDecorator<?> decorator) { + if (selectedTip == null) { + // use default selected tip text + selectedTip = DEFAULT_SELECTED_TOOLTIP; + } + if (notSelectedTip == null) { + // use default selected tip text + notSelectedTip = DEFAULT_NOT_SELECTED_TOOLTIP; + } + JPopupMenu popup = getPopup(); + + //Container container = ui.getIndexesContainer(); + + int nbContext = decorator.getNbContext(); + if (nbContext > 1) { + for (int i = 0; i < nbContext; i++) { + String property = i18nPrefix + decorator.getProperty(i); + String propertyI18n = t(property); + JRadioButtonMenuItem button = new JRadioButtonMenuItem(propertyI18n); + button.putClientProperty(JAXXButtonGroup.BUTTON8GROUP_CLIENT_PROPERTY, indexes); + button.putClientProperty(JAXXButtonGroup.VALUE_CLIENT_PROPERTY, i); + popup.add(button); + if (selectedTip != null) { + button.putClientProperty(JAXXButtonGroup.SELECTED_TIP_CLIENT_PROPERTY, t(selectedTip, propertyI18n)); + } + if (notSelectedTip != null) { + button.putClientProperty(JAXXButtonGroup.NOT_SELECTED_TIP_CLIENT_PROPERTY, t(notSelectedTip, propertyI18n)); + } + button.setSelected(false); + indexes.add(button); + } + } + if (title == null) { + // use default popup title + title = DEFAULT_POPUP_LABEL; + + Class<?> type = decorator.getType(); + String beanI18nKey; + if (type == null) { + beanI18nKey = n("bean.unknown.type"); + } else { + beanI18nKey = i18nPrefix + Introspector.decapitalize(type.getSimpleName()); + } + String beanI18n = t(beanI18nKey); + title = t(title, beanI18n); + } else { + title = t(title); + } + + sortDown.putClientProperty(JAXXButtonGroup.SELECTED_TIP_CLIENT_PROPERTY, t("bean.sort.down.tip")); + sortDown.putClientProperty(JAXXButtonGroup.NOT_SELECTED_TIP_CLIENT_PROPERTY, t("bean.sort.down.toSelect.tip")); + + sortUp.putClientProperty(JAXXButtonGroup.SELECTED_TIP_CLIENT_PROPERTY, t("bean.sort.up.tip")); + sortUp.putClientProperty(JAXXButtonGroup.NOT_SELECTED_TIP_CLIENT_PROPERTY, t("bean.sort.up.toSelect.tip")); + + if (nbContext < 2) { + getPopup().remove(popupSeparator); + getPopup().remove(popupLabel); + } + popupLabel.setText(title); + getPopup().setLabel(title); + getPopup().invalidate(); + } +} \ No newline at end of file diff --git a/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/JaxxWidgetRuntimeException.java b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/JaxxWidgetRuntimeException.java new file mode 100644 index 0000000..0bcdd6d --- /dev/null +++ b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/JaxxWidgetRuntimeException.java @@ -0,0 +1,28 @@ +package org.nuiton.jaxx.widgets; + +/** + * A none checked exception to use in widgets. + * + * Created on 11/30/14. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.18 + */ +public class JaxxWidgetRuntimeException extends RuntimeException { + private static final long serialVersionUID = -2963740979386945340L; + + public JaxxWidgetRuntimeException() { + } + + public JaxxWidgetRuntimeException(String message) { + super(message); + } + + public JaxxWidgetRuntimeException(String message, Throwable cause) { + super(message, cause); + } + + public JaxxWidgetRuntimeException(Throwable cause) { + super(cause); + } +} \ No newline at end of file diff --git a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/ModelToBean.java b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/ModelToBean.java similarity index 98% rename from jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/ModelToBean.java rename to jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/ModelToBean.java index 13d4081..4e941df 100644 --- a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/ModelToBean.java +++ b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/ModelToBean.java @@ -26,7 +26,7 @@ package org.nuiton.jaxx.widgets; * Created on 11/23/14. * * @author Tony Chemit - chemit@codelutin.com - * @since 2.17 + * @since 2.18 */ public interface ModelToBean { diff --git a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/MutateOnConditionalPropertyChangeListener.java b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/MutateOnConditionalPropertyChangeListener.java similarity index 70% rename from jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/MutateOnConditionalPropertyChangeListener.java rename to jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/MutateOnConditionalPropertyChangeListener.java index 4fe5ca4..e81f3ba 100644 --- a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/MutateOnConditionalPropertyChangeListener.java +++ b/jaxx-widgets-common/src/main/java/org/nuiton/jaxx/widgets/MutateOnConditionalPropertyChangeListener.java @@ -22,33 +22,47 @@ package org.nuiton.jaxx.widgets; * #L% */ +import com.google.common.base.Preconditions; import com.google.common.base.Predicate; -import jaxx.runtime.swing.JAXXRuntimeException; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.lang.reflect.Method; /** - * A property change listener to mutate to a bean after a predicate is applied. + * A property change listener to mutate to a bean after a predicate was applied. * * Created on 11/23/14. * * @author Tony Chemit - chemit@codelutin.com - * @since 2.17 + * @since 2.18 */ public class MutateOnConditionalPropertyChangeListener<M extends ModelToBean> implements PropertyChangeListener { + /** Logger. */ + private static final Log log = LogFactory.getLog(MutateOnConditionalPropertyChangeListener.class); + private final M model; private final Method mutator; private final Predicate<M> canMutatePredicate; + private final String propertyName; + public MutateOnConditionalPropertyChangeListener(M model, Method mutator, Predicate<M> canMutatePredicate) { + + Preconditions.checkNotNull(model); + Preconditions.checkNotNull(mutator); + Preconditions.checkNotNull(canMutatePredicate); + this.model = model; this.mutator = mutator; this.canMutatePredicate = canMutatePredicate; + this.propertyName = mutator.getName(); + } @Override @@ -58,12 +72,17 @@ public class MutateOnConditionalPropertyChangeListener<M extends ModelToBean> im Object newValue = evt.getNewValue(); + + if (log.isDebugEnabled()) { + log.debug("Mutates property " + propertyName + " with value " + newValue + " on " + model); + } + try { mutator.invoke(model.getBean(), newValue); } catch (Exception e) { - throw new JAXXRuntimeException(e); + throw new JaxxWidgetRuntimeException("Can't mutate property " + propertyName + " on " + model, e); } } diff --git a/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_en_GB.properties b/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_en_GB.properties new file mode 100644 index 0000000..56c28ff --- /dev/null +++ b/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_en_GB.properties @@ -0,0 +1,8 @@ +bean.popup.label=Object '%1$s' +bean.sort.down.tip=Actually, sort order is descending +bean.sort.down.toSelect.tip=To sort in Descending order +bean.sort.off=Click to activate the sort on this property +bean.sort.on=This is the property actually used +bean.sort.up.tip=Actually, sort order is acending +bean.sort.up.toSelect.tip=Click here to sort in ascending order +bean.unknown.type=Object of unkown type diff --git a/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_es_ES.properties b/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_es_ES.properties new file mode 100644 index 0000000..ed64e0a --- /dev/null +++ b/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_es_ES.properties @@ -0,0 +1,8 @@ +bean.popup.label=Objeto '%1$s' +bean.sort.down.tip=Clasificación decreciente actualmente utilizada +bean.sort.down.toSelect.tip=Clic para clasificar según orden decreciente +bean.sort.off=Click para activar la clasificación de la propiedad '%1$s' +bean.sort.on=Clasificación realizada sobre la propiedad '%1$s' +bean.sort.up.tip=Clasificación creciente actualmente utilizada +bean.sort.up.toSelect.tip=Clic para clasificar según orden creciente +bean.unknown.type=Objeto de tipo desconocido diff --git a/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_fr_FR.properties b/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_fr_FR.properties new file mode 100644 index 0000000..2c9371d --- /dev/null +++ b/jaxx-widgets-common/src/main/resources/i18n/jaxx-widgets-common_fr_FR.properties @@ -0,0 +1,8 @@ +bean.popup.label=Objet '%1$s' +bean.sort.down.tip=Tri décroissant actuellement utilisé +bean.sort.down.toSelect.tip=Cliquer pour trier selon l'ordre décroissant +bean.sort.off=Cliquer pour activer le tri sur la propriété '%1$s' +bean.sort.on=Le tri est effectué sur la propriété '%1$s' +bean.sort.up.tip=Tri croissant actuellement utilisé +bean.sort.up.toSelect.tip=Cliquer pour trier selon l'ordre croissant +bean.unknown.type=Objet de type inconnu diff --git a/jaxx-widgets-number/pom.xml b/jaxx-widgets-number/pom.xml index 40610c1..7ca62f2 100644 --- a/jaxx-widgets-number/pom.xml +++ b/jaxx-widgets-number/pom.xml @@ -37,6 +37,14 @@ <name>JAXX :: Widgets Number</name> <description>Widget to edit numbers</description> + <properties> + <jaxx.addProjectClassPath>true</jaxx.addProjectClassPath> + <jaxx.addSourcesToClassPath>true</jaxx.addSourcesToClassPath> + <jaxx.autoImportCss>true</jaxx.autoImportCss> + <jaxx.addAutoHandlerUI>true</jaxx.addAutoHandlerUI> + <!--jaxx.useUIManagerForIcon>true</jaxx.useUIManagerForIcon--> + </properties> + <dependencies> <!-- sibiling dependencies --> @@ -57,16 +65,6 @@ <groupId>org.swinglabs.swingx</groupId> <artifactId>swingx-common</artifactId> </dependency> - - <dependency> - <groupId>org.swinglabs.swingx</groupId> - <artifactId>swingx-core</artifactId> - </dependency> - - <dependency> - <groupId>org.swinglabs.swingx</groupId> - <artifactId>swingx-autocomplete</artifactId> - </dependency> <dependency> <groupId>org.nuiton.i18n</groupId> @@ -79,16 +77,6 @@ </dependency> <dependency> - <groupId>org.nuiton</groupId> - <artifactId>nuiton-decorator</artifactId> - </dependency> - - <dependency> - <groupId>org.nuiton</groupId> - <artifactId>nuiton-converter</artifactId> - </dependency> - - <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </dependency> @@ -99,31 +87,11 @@ </dependency> <dependency> - <groupId>commons-primitives</groupId> - <artifactId>commons-primitives</artifactId> - </dependency> - - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-collections4</artifactId> - </dependency> - - <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </dependency> <dependency> - <groupId>commons-beanutils</groupId> - <artifactId>commons-beanutils</artifactId> - </dependency> - - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - </dependency> - - <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <scope>provided</scope> @@ -150,8 +118,28 @@ <plugins> <plugin> + <groupId>${project.groupId}</groupId> + <artifactId>jaxx-maven-plugin</artifactId> + <version>${project.version}</version> + <executions> + <execution> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + + <plugin> <groupId>org.nuiton.i18n</groupId> <artifactId>i18n-maven-plugin</artifactId> + <configuration> + <entries> + <entry> + <basedir>${project.build.directory}/generated-sources/java</basedir> + </entry> + </entries> + </configuration> <executions> <execution> <goals> diff --git a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2.css b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2.css similarity index 100% rename from jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2.css rename to jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2.css diff --git a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2.jaxx b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2.jaxx similarity index 100% rename from jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2.jaxx rename to jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2.jaxx diff --git a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Config.java b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Config.java similarity index 98% rename from jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Config.java rename to jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Config.java index b9bce69..b9470ec 100644 --- a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Config.java +++ b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Config.java @@ -1,4 +1,4 @@ -package org.nuiton.jaxx.widgets.editor.number; +package org.nuiton.jaxx.widgets.number; /* * #%L diff --git a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Handler.java b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Handler.java similarity index 99% rename from jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Handler.java rename to jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Handler.java index d0cbf6f..91d8bae 100644 --- a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Handler.java +++ b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Handler.java @@ -1,4 +1,4 @@ -package org.nuiton.jaxx.widgets.editor.number; +package org.nuiton.jaxx.widgets.number; /* * #%L diff --git a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Model.java b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Model.java similarity index 99% rename from jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Model.java rename to jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Model.java index 20de0dc..c168b7c 100644 --- a/jaxx-widgets/src/main/java/org/nuiton/jaxx/widgets/editor/number/NumberEditor2Model.java +++ b/jaxx-widgets-number/src/main/java/org/nuiton/jaxx/widgets/number/NumberEditor2Model.java @@ -1,4 +1,4 @@ -package org.nuiton.jaxx.widgets.editor.number; +package org.nuiton.jaxx.widgets.number; /* * #%L diff --git a/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_en_GB.properties b/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_en_GB.properties new file mode 100644 index 0000000..67f8ca8 --- /dev/null +++ b/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_en_GB.properties @@ -0,0 +1,14 @@ +numbereditor..=. +numbereditor.1=1 +numbereditor.2=2 +numbereditor.3=3 +numbereditor.4=4 +numbereditor.5=5 +numbereditor.6=6 +numbereditor.7=7 +numbereditor.8=8 +numbereditor.9=9 +numbereditor.action.reset.tip=Reset +numbereditor.action.show.tip=Show numeric panel +numbereditor.clearAll=C +numbereditor.toggleSign=+/- diff --git a/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_es_ES.properties b/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_es_ES.properties new file mode 100644 index 0000000..f8fe076 --- /dev/null +++ b/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_es_ES.properties @@ -0,0 +1,14 @@ +numbereditor..=. +numbereditor.1=1 +numbereditor.2=2 +numbereditor.3=3 +numbereditor.4=4 +numbereditor.5=5 +numbereditor.6=6 +numbereditor.7=7 +numbereditor.8=8 +numbereditor.9=9 +numbereditor.action.reset.tip=Reinicializar +numbereditor.action.show.tip=Mostar el teclado numérico +numbereditor.clearAll=C +numbereditor.toggleSign=+/- diff --git a/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_fr_FR.properties b/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_fr_FR.properties new file mode 100644 index 0000000..9a34ded --- /dev/null +++ b/jaxx-widgets-number/src/main/resources/i18n/jaxx-widgets-number_fr_FR.properties @@ -0,0 +1,14 @@ +numbereditor..=. +numbereditor.1=1 +numbereditor.2=2 +numbereditor.3=3 +numbereditor.4=4 +numbereditor.5=5 +numbereditor.6=6 +numbereditor.7=7 +numbereditor.8=8 +numbereditor.9=9 +numbereditor.action.reset.tip=Réinitialiser +numbereditor.action.show.tip=Afficher le pavé numérique +numbereditor.clearAll=C +numbereditor.toggleSign=+/- -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.