OpenConcerto

Dépôt officiel du code source de l'ERP OpenConcerto
sonarqube

svn://code.openconcerto.org/openconcerto

Rev

Rev 102 | Rev 181 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 102 Rev 147
Line 20... Line 20...
20
import javax.swing.JLabel;
20
import javax.swing.JLabel;
21
import javax.swing.JList;
21
import javax.swing.JList;
22
import javax.swing.JOptionPane;
22
import javax.swing.JOptionPane;
23
import javax.swing.JPanel;
23
import javax.swing.JPanel;
24
import javax.swing.SwingUtilities;
24
import javax.swing.SwingUtilities;
-
 
25
import javax.swing.SwingWorker;
25
 
26
 
26
import org.openconcerto.sql.Configuration;
27
import org.openconcerto.sql.Configuration;
27
import org.openconcerto.sql.PropsConfiguration;
28
import org.openconcerto.sql.PropsConfiguration;
28
import org.openconcerto.sql.model.SQLField;
29
import org.openconcerto.sql.model.SQLField;
29
import org.openconcerto.sql.model.SQLRowValues;
30
import org.openconcerto.sql.model.SQLRowValues;
30
import org.openconcerto.sql.request.SQLFieldTranslator;
31
import org.openconcerto.sql.request.SQLFieldTranslator;
31
import org.openconcerto.ui.DefaultGridBagConstraints;
32
import org.openconcerto.ui.DefaultGridBagConstraints;
32
import org.openconcerto.ui.JLabelBold;
33
import org.openconcerto.ui.JLabelBold;
33
import org.openconcerto.ui.ReloadPanel;
34
import org.openconcerto.ui.ReloadPanel;
34
import org.openconcerto.utils.ExceptionHandler;
35
import org.openconcerto.utils.ExceptionHandler;
35
import org.openconcerto.utils.SwingWorker2;
-
 
36
 
36
 
37
public class BatchEditorPanel extends JPanel {
37
public class BatchEditorPanel extends JPanel {
38
 
38
 
39
    public BatchEditorPanel(final List<SQLRowValues> rows, FieldFilter filter) {
39
    public BatchEditorPanel(final List<SQLRowValues> rows, FieldFilter filter) {
40
        Configuration conf = PropsConfiguration.getInstance();
40
        Configuration conf = PropsConfiguration.getInstance();
41
        final SQLFieldTranslator translator = conf.getTranslator();
41
        final SQLFieldTranslator translator = conf.getTranslator();
42
        Set<SQLField> fields = rows.get(0).getTable().getFields();
42
        Set<SQLField> fields = rows.get(0).getTable().getFields();
43
        List<SQLField> f = new ArrayList<SQLField>();
43
        List<SQLField> f = new ArrayList<SQLField>();
44
        for (SQLField sqlField : fields) {
44
        for (SQLField sqlField : fields) {
45
            if (ForbiddenFieldName.isAllowed(sqlField.getName()) && translator.getLabelFor(sqlField) != null) {
45
            if (ForbiddenFieldName.isAllowed(sqlField.getName()) && translator.getLabelFor(sqlField) != null) {
46
                if (filter == null || (filter != null && !filter.isFiltered(sqlField))) {
46
                if (filter == null || !filter.isFiltered(sqlField)) {
47
                    f.add(sqlField);
47
                    f.add(sqlField);
48
                }
48
                }
49
            }
49
            }
50
        }
50
        }
51
 
51
 
Line 58... Line 58...
58
        });
58
        });
59
        this.setLayout(new GridBagLayout());
59
        this.setLayout(new GridBagLayout());
60
        GridBagConstraints c = new DefaultGridBagConstraints();
60
        GridBagConstraints c = new DefaultGridBagConstraints();
61
        this.add(new JLabel("Champ"), c);
61
        this.add(new JLabel("Champ"), c);
62
 
62
 
63
        final JComboBox combo = new JComboBox(f.toArray());
63
        final JComboBox<SQLField> combo = new JComboBox<SQLField>(f.toArray(new SQLField[1]));
64
        combo.setRenderer(new DefaultListCellRenderer() {
64
        combo.setRenderer(new DefaultListCellRenderer() {
65
            @Override
65
            @Override
66
            public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
66
            public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
67
                value = translator.getLabelFor(((SQLField) value));
67
                String label = translator.getLabelFor(((SQLField) value));
68
                return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
68
                return super.getListCellRendererComponent(list, label, index, isSelected, cellHasFocus);
69
            }
69
            }
70
        });
70
        });
71
 
71
 
72
        combo.setSelectedIndex(0);
72
        combo.setSelectedIndex(0);
73
 
73
 
Line 125... Line 125...
125
                buttonCancel.setEnabled(false);
125
                buttonCancel.setEnabled(false);
126
                comp.setEnabled(false);
126
                comp.setEnabled(false);
127
 
127
 
128
                combo.setEnabled(false);
128
                combo.setEnabled(false);
129
                reload.setMode(ReloadPanel.MODE_ROTATE);
129
                reload.setMode(ReloadPanel.MODE_ROTATE);
130
                SwingWorker2<Object, Object> w = new SwingWorker2<Object, Object>() {
130
                SwingWorker<Object, Object> w = new SwingWorker<Object, Object>() {
131
 
131
 
132
                    @Override
132
                    @Override
133
                    protected Object doInBackground() throws Exception {
133
                    protected Object doInBackground() throws Exception {
134
                        try {
134
                        try {
135
                            final BatchProcessor processor = comp.getProcessor();
135
                            final BatchProcessor processor = comp.getProcessor();