1 package fr.ifremer.dali.ui.swing.util.table.editor;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 import fr.ifremer.dali.dto.referential.pmfm.MatrixDTO;
27 import fr.ifremer.dali.ui.swing.DaliUIContext;
28 import fr.ifremer.dali.ui.swing.content.manage.referential.pmfm.matrix.associatedFractions.AssociatedFractionsUI;
29 import fr.ifremer.dali.ui.swing.util.DaliUI;
30 import fr.ifremer.dali.ui.swing.util.table.AbstractDaliTableModel;
31 import fr.ifremer.quadrige3.ui.swing.table.SwingTable;
32 import fr.ifremer.quadrige3.ui.swing.table.editor.ButtonCellEditor;
33
34 import java.awt.Dimension;
35
36
37
38
39
40 public class AssociatedFractionsCellEditor extends ButtonCellEditor {
41
42 private final SwingTable table;
43
44 private final DaliUI parentUI;
45
46
47
48
49
50
51
52 public AssociatedFractionsCellEditor(
53 final SwingTable table,
54 final DaliUI parentUI) {
55 this.table = table;
56 this.parentUI = parentUI;
57 }
58
59
60 @Override
61 public void onButtonCellAction(final int rowIndex, final int column) {
62
63 final AbstractDaliTableModel<?> tableModel = (AbstractDaliTableModel<?>) table.getModel();
64
65 final int rowModelIndex = table.convertRowIndexToModel(rowIndex);
66 final MatrixDTO rowModel = (MatrixDTO) tableModel.getEntry(rowModelIndex);
67
68
69 final AssociatedFractionsUI associatedFractionsUI = new AssociatedFractionsUI((DaliUIContext) parentUI.getHandler().getContext());
70 associatedFractionsUI.getModel().setMatrix(rowModel);
71 parentUI.getHandler().openDialog(associatedFractionsUI, new Dimension(640, 480));
72 }
73 }