Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe

Commits:

2 changed files:

Changes:

  • client/src/main/java/fr/ird/observe/client/ui/content/ContentUIInitializer.java
    ... ... @@ -24,7 +24,6 @@ package fr.ird.observe.client.ui.content;
    24 24
     
    
    25 25
     import com.google.common.collect.ImmutableMap;
    
    26 26
     import com.google.common.collect.Lists;
    
    27
    -import fr.ird.observe.dto.I18nEnumHelper;
    
    28 27
     import fr.ird.observe.client.ObserveSwingApplicationContext;
    
    29 28
     import fr.ird.observe.client.ui.ObserveKeyStrokes;
    
    30 29
     import fr.ird.observe.client.ui.actions.UIActionSupport;
    
    ... ... @@ -42,53 +41,15 @@ import fr.ird.observe.client.ui.util.BooleanEditor;
    42 41
     import fr.ird.observe.client.ui.util.UIHelper;
    
    43 42
     import fr.ird.observe.client.ui.util.tripMap.ObserveMapPane;
    
    44 43
     import fr.ird.observe.client.validation.ObserveSwingValidator;
    
    44
    +import fr.ird.observe.dto.I18nEnumHelper;
    
    45
    +import fr.ird.observe.dto.IdDto;
    
    45 46
     import fr.ird.observe.dto.decoration.DecoratorService;
    
    46 47
     import fr.ird.observe.dto.decoration.ObserveI18nDecoratorHelper;
    
    47 48
     import fr.ird.observe.dto.decoration.ObserveI18nLabelsBuilder;
    
    48 49
     import fr.ird.observe.dto.decoration.decorators.DataReferenceDecorator;
    
    49 50
     import fr.ird.observe.dto.decoration.decorators.ReferentialReferenceDecorator;
    
    50
    -import fr.ird.observe.dto.IdDto;
    
    51 51
     import fr.ird.observe.dto.reference.DataDtoReference;
    
    52 52
     import fr.ird.observe.dto.reference.ReferentialDtoReference;
    
    53
    -import java.awt.Color;
    
    54
    -import java.awt.Component;
    
    55
    -import java.awt.Dimension;
    
    56
    -import java.awt.event.ActionEvent;
    
    57
    -import java.awt.event.FocusAdapter;
    
    58
    -import java.awt.event.FocusEvent;
    
    59
    -import java.awt.event.ItemEvent;
    
    60
    -import java.awt.event.KeyAdapter;
    
    61
    -import java.awt.event.KeyEvent;
    
    62
    -import java.text.ParseException;
    
    63
    -import java.text.SimpleDateFormat;
    
    64
    -import java.util.ArrayList;
    
    65
    -import java.util.Collections;
    
    66
    -import java.util.Date;
    
    67
    -import java.util.EnumSet;
    
    68
    -import java.util.HashSet;
    
    69
    -import java.util.List;
    
    70
    -import java.util.Objects;
    
    71
    -import java.util.Set;
    
    72
    -import javax.swing.AbstractAction;
    
    73
    -import javax.swing.AbstractButton;
    
    74
    -import javax.swing.Action;
    
    75
    -import javax.swing.InputMap;
    
    76
    -import javax.swing.JCheckBox;
    
    77
    -import javax.swing.JComboBox;
    
    78
    -import javax.swing.JComponent;
    
    79
    -import javax.swing.JFormattedTextField;
    
    80
    -import javax.swing.JLabel;
    
    81
    -import javax.swing.JList;
    
    82
    -import javax.swing.JScrollBar;
    
    83
    -import javax.swing.JSpinner;
    
    84
    -import javax.swing.JTabbedPane;
    
    85
    -import javax.swing.JTextArea;
    
    86
    -import javax.swing.JTextField;
    
    87
    -import javax.swing.KeyStroke;
    
    88
    -import javax.swing.ListCellRenderer;
    
    89
    -import javax.swing.SwingUtilities;
    
    90
    -import javax.swing.border.LineBorder;
    
    91
    -import javax.swing.table.TableCellEditor;
    
    92 53
     import org.apache.commons.lang3.BooleanUtils;
    
    93 54
     import org.apache.commons.lang3.StringUtils;
    
    94 55
     import org.apache.commons.logging.Log;
    
    ... ... @@ -117,6 +78,45 @@ import org.nuiton.jaxx.widgets.temperature.TemperatureEditorConfig;
    117 78
     import org.nuiton.jaxx.widgets.temperature.TemperatureFormat;
    
    118 79
     import org.nuiton.util.DateUtil;
    
    119 80
     
    
    81
    +import javax.swing.AbstractAction;
    
    82
    +import javax.swing.AbstractButton;
    
    83
    +import javax.swing.Action;
    
    84
    +import javax.swing.InputMap;
    
    85
    +import javax.swing.JCheckBox;
    
    86
    +import javax.swing.JComboBox;
    
    87
    +import javax.swing.JComponent;
    
    88
    +import javax.swing.JFormattedTextField;
    
    89
    +import javax.swing.JLabel;
    
    90
    +import javax.swing.JList;
    
    91
    +import javax.swing.JScrollBar;
    
    92
    +import javax.swing.JSpinner;
    
    93
    +import javax.swing.JTabbedPane;
    
    94
    +import javax.swing.JTextArea;
    
    95
    +import javax.swing.JTextField;
    
    96
    +import javax.swing.KeyStroke;
    
    97
    +import javax.swing.ListCellRenderer;
    
    98
    +import javax.swing.SwingUtilities;
    
    99
    +import javax.swing.border.LineBorder;
    
    100
    +import javax.swing.table.TableCellEditor;
    
    101
    +import java.awt.Color;
    
    102
    +import java.awt.Component;
    
    103
    +import java.awt.Dimension;
    
    104
    +import java.awt.event.ActionEvent;
    
    105
    +import java.awt.event.FocusAdapter;
    
    106
    +import java.awt.event.FocusEvent;
    
    107
    +import java.awt.event.ItemEvent;
    
    108
    +import java.awt.event.KeyAdapter;
    
    109
    +import java.awt.event.KeyEvent;
    
    110
    +import java.text.ParseException;
    
    111
    +import java.text.SimpleDateFormat;
    
    112
    +import java.util.ArrayList;
    
    113
    +import java.util.Collections;
    
    114
    +import java.util.Date;
    
    115
    +import java.util.EnumSet;
    
    116
    +import java.util.HashSet;
    
    117
    +import java.util.List;
    
    118
    +import java.util.Objects;
    
    119
    +import java.util.Set;
    
    120 120
     
    
    121 121
     import static org.nuiton.i18n.I18n.t;
    
    122 122
     
    
    ... ... @@ -404,8 +404,7 @@ public class ContentUIInitializer<E extends IdDto, UI extends ContentUI<E, UI>>
    404 404
                 log.debug("init combobox for " + beanComboBox.getBeanType());
    
    405 405
             }
    
    406 406
             Class referenceType = beanComboBox.getBeanType();
    
    407
    -
    
    408
    -        beanComboBox.setI18nLabelBuilder(new ObserveI18nLabelsBuilder(referenceType));
    
    407
    +        beanComboBox.setI18nLabelBuilder(ObserveI18nLabelsBuilder.createFromReferenceType(referenceType));
    
    409 408
             beanComboBox.setI18nPrefix("observe.common.");
    
    410 409
             beanComboBox.setMinimumSize(new Dimension(0, 24));
    
    411 410
             beanComboBox.getResetButton().setToolTipText(beanComboBox.getResetButton().getToolTipText() + " (ctrl + R)");
    
    ... ... @@ -461,7 +460,7 @@ public class ContentUIInitializer<E extends IdDto, UI extends ContentUI<E, UI>>
    461 460
             log.debug("init list for " + beanList.getBeanType());
    
    462 461
     
    
    463 462
             Class referenceType = beanList.getBeanType();
    
    464
    -        beanList.setI18nLabelBuilder(new ObserveI18nLabelsBuilder(referenceType));
    
    463
    +        beanList.setI18nLabelBuilder(ObserveI18nLabelsBuilder.createFromReferenceType(referenceType));
    
    465 464
             if (ReferentialDtoReference.class.isAssignableFrom(referenceType)) {
    
    466 465
                 prepareReferentialEntityList(referenceType, beanList);
    
    467 466
             } else {
    
    ... ... @@ -474,7 +473,7 @@ public class ContentUIInitializer<E extends IdDto, UI extends ContentUI<E, UI>>
    474 473
     
    
    475 474
             beanList.setI18nPrefix("observe.common.");
    
    476 475
             Class referenceType = beanList.getBeanType();
    
    477
    -        beanList.setI18nLabelBuilder(new ObserveI18nLabelsBuilder(referenceType));
    
    476
    +        beanList.setI18nLabelBuilder(ObserveI18nLabelsBuilder.createFromReferenceType(referenceType));
    
    478 477
             beanList.getAddButton().setFocusable(false);
    
    479 478
             beanList.getRemoveButton().setFocusable(false);
    
    480 479
     
    

  • dto/src/main/java/fr/ird/observe/dto/decoration/ObserveI18nLabelsBuilder.java
    ... ... @@ -26,6 +26,9 @@ import com.google.common.collect.ImmutableMap;
    26 26
     import fr.ird.observe.dto.referential.I18nReferentialDto;
    
    27 27
     import fr.ird.observe.dto.referential.ReferentialDto;
    
    28 28
     import java.util.Map;
    
    29
    +import java.util.Objects;
    
    30
    +
    
    31
    +import fr.ird.observe.spi.DtoModelHelper;
    
    29 32
     import org.nuiton.decorator.MultiJXPathDecorator;
    
    30 33
     import org.nuiton.jaxx.widgets.select.I18nLabelsBuilder;
    
    31 34
     
    
    ... ... @@ -70,6 +73,11 @@ public class ObserveI18nLabelsBuilder extends I18nLabelsBuilder {
    70 73
                 .put("country", "")
    
    71 74
                 .build();
    
    72 75
     
    
    76
    +    public static ObserveI18nLabelsBuilder createFromReferenceType(Class referenceType) {
    
    77
    +        Class dtoType = DtoModelHelper.getReferencesInitializer().getReferenceToDtoClassMapping().forAny(Objects.requireNonNull(referenceType));
    
    78
    +        return new ObserveI18nLabelsBuilder(Objects.requireNonNull(dtoType));
    
    79
    +    }
    
    80
    +
    
    73 81
         public ObserveI18nLabelsBuilder(Class beanType) {
    
    74 82
             super(beanType);
    
    75 83
         }