Line 26... |
Line 26... |
26 |
import org.openconcerto.sql.view.list.RowValuesTableControlPanel;
|
26 |
import org.openconcerto.sql.view.list.RowValuesTableControlPanel;
|
27 |
import org.openconcerto.sql.view.list.RowValuesTableModel;
|
27 |
import org.openconcerto.sql.view.list.RowValuesTableModel;
|
28 |
import org.openconcerto.sql.view.list.RowValuesTableRenderer;
|
28 |
import org.openconcerto.sql.view.list.RowValuesTableRenderer;
|
29 |
import org.openconcerto.sql.view.list.SQLTableElement;
|
29 |
import org.openconcerto.sql.view.list.SQLTableElement;
|
30 |
import org.openconcerto.ui.DefaultGridBagConstraints;
|
30 |
import org.openconcerto.ui.DefaultGridBagConstraints;
|
- |
|
31 |
import org.openconcerto.ui.table.XTableColumnModel;
|
31 |
import org.openconcerto.utils.DecimalUtils;
|
32 |
import org.openconcerto.utils.DecimalUtils;
|
32 |
|
33 |
|
33 |
import java.awt.GridBagConstraints;
|
34 |
import java.awt.GridBagConstraints;
|
34 |
import java.awt.GridBagLayout;
|
35 |
import java.awt.GridBagLayout;
|
35 |
import java.awt.event.ActionEvent;
|
36 |
import java.awt.event.ActionEvent;
|
36 |
import java.math.BigDecimal;
|
37 |
import java.math.BigDecimal;
|
37 |
import java.util.ArrayList;
|
38 |
import java.util.ArrayList;
|
38 |
import java.util.Arrays;
|
39 |
import java.util.Arrays;
|
- |
|
40 |
import java.util.HashMap;
|
39 |
import java.util.List;
|
41 |
import java.util.List;
|
- |
|
42 |
import java.util.Map;
|
40 |
import java.util.Vector;
|
43 |
import java.util.Vector;
|
41 |
|
44 |
|
42 |
import javax.swing.AbstractAction;
|
45 |
import javax.swing.AbstractAction;
|
43 |
import javax.swing.JButton;
|
46 |
import javax.swing.JButton;
|
44 |
import javax.swing.JPanel;
|
47 |
import javax.swing.JPanel;
|
Line 78... |
Line 81... |
78 |
list.add(fam);
|
81 |
list.add(fam);
|
79 |
|
82 |
|
80 |
final SQLField fieldHA = e.getTable().getField("PA_HT");
|
83 |
final SQLField fieldHA = e.getTable().getField("PA_HT");
|
81 |
final DeviseNumericCellEditor editorPAHT = new DeviseNumericCellEditor(fieldHA);
|
84 |
final DeviseNumericCellEditor editorPAHT = new DeviseNumericCellEditor(fieldHA);
|
82 |
final SQLTableElement pa = new SQLTableElement(fieldHA, BigDecimal.class, editorPAHT);
|
85 |
final SQLTableElement pa = new SQLTableElement(fieldHA, BigDecimal.class, editorPAHT);
|
83 |
pa.setRenderer(new DeviseTableCellRenderer());
|
86 |
DeviseTableCellRenderer renderer = new DeviseTableCellRenderer();
|
- |
|
87 |
renderer.setHideZeroValue(true);
|
- |
|
88 |
pa.setRenderer(renderer);
|
84 |
if (e.getTable().contains("ID_CATEGORIE_HEURE")) {
|
89 |
if (e.getTable().contains("ID_CATEGORIE_HEURE")) {
|
85 |
pa.setEditable(false);
|
90 |
pa.setEditable(false);
|
86 |
}
|
91 |
}
|
87 |
list.add(pa);
|
92 |
list.add(pa);
|
88 |
|
93 |
|
89 |
final SQLField fieldPV = e.getTable().getField("PV_HT");
|
94 |
final SQLField fieldPV = e.getTable().getField("PV_HT");
|
90 |
final DeviseNumericCellEditor editorPVHT = new DeviseNumericCellEditor(fieldPV);
|
95 |
final DeviseNumericCellEditor editorPVHT = new DeviseNumericCellEditor(fieldPV);
|
91 |
final SQLTableElement pv = new SQLTableElement(fieldPV, BigDecimal.class, editorPVHT);
|
96 |
final SQLTableElement pv = new SQLTableElement(fieldPV, BigDecimal.class, editorPVHT);
|
92 |
pv.setRenderer(new DeviseTableCellRenderer());
|
97 |
pv.setRenderer(renderer);
|
93 |
list.add(pv);
|
98 |
list.add(pv);
|
94 |
|
99 |
|
95 |
SQLTableElement qteU = new SQLTableElement(e.getTable().getField("QTE"), BigDecimal.class) {
|
100 |
SQLTableElement qteU = new SQLTableElement(e.getTable().getField("QTE"), BigDecimal.class) {
|
96 |
|
101 |
|
97 |
protected Object getDefaultNullValue() {
|
102 |
protected Object getDefaultNullValue() {
|
98 |
return BigDecimal.ZERO;
|
103 |
return BigDecimal.ZERO;
|
99 |
}
|
104 |
}
|
100 |
};
|
105 |
};
|
101 |
qteU.setRenderer(new DeviseTableCellRenderer());
|
106 |
qteU.setRenderer(renderer);
|
102 |
list.add(qteU);
|
107 |
list.add(qteU);
|
103 |
|
108 |
|
104 |
if (e.getTable().contains("ANT")) {
|
109 |
if (e.getTable().contains("ANT")) {
|
105 |
SQLTableElement ant = new SQLTableElement(e.getTable().getField("ANT"), BigDecimal.class) {
|
110 |
SQLTableElement ant = new SQLTableElement(e.getTable().getField("ANT"), BigDecimal.class) {
|
106 |
|
111 |
|
107 |
protected Object getDefaultNullValue() {
|
112 |
protected Object getDefaultNullValue() {
|
108 |
return BigDecimal.ZERO;
|
113 |
return BigDecimal.ZERO;
|
109 |
}
|
114 |
}
|
110 |
};
|
115 |
};
|
111 |
ant.setRenderer(new DeviseTableCellRenderer());
|
116 |
ant.setRenderer(renderer);
|
112 |
list.add(ant);
|
117 |
list.add(ant);
|
113 |
}
|
118 |
}
|
114 |
|
119 |
|
115 |
if (e.getTable().contains("RESTANT")) {
|
120 |
if (e.getTable().contains("RESTANT")) {
|
116 |
SQLTableElement restant = new SQLTableElement(e.getTable().getField("RESTANT"), BigDecimal.class) {
|
121 |
SQLTableElement restant = new SQLTableElement(e.getTable().getField("RESTANT"), BigDecimal.class) {
|
117 |
|
122 |
|
118 |
protected Object getDefaultNullValue() {
|
123 |
protected Object getDefaultNullValue() {
|
119 |
return BigDecimal.ZERO;
|
124 |
return BigDecimal.ZERO;
|
120 |
}
|
125 |
}
|
121 |
};
|
126 |
};
|
122 |
restant.setRenderer(new DeviseTableCellRenderer());
|
127 |
restant.setRenderer(renderer);
|
123 |
list.add(restant);
|
128 |
list.add(restant);
|
124 |
}
|
129 |
}
|
125 |
|
130 |
|
126 |
final SQLTableElement unit = new SQLTableElement(e.getTable().getField("ID_UNITE_VENTE"));
|
131 |
final SQLTableElement unit = new SQLTableElement(e.getTable().getField("ID_UNITE_VENTE"));
|
127 |
list.add(unit);
|
132 |
list.add(unit);
|
128 |
|
133 |
|
129 |
final SQLField fieldTotalHA = e.getTable().getField("T_PA_HT");
|
134 |
final SQLField fieldTotalHA = e.getTable().getField("T_PA_HT");
|
130 |
final DeviseNumericCellEditor editorTotalPAHT = new DeviseNumericCellEditor(fieldTotalHA);
|
135 |
final DeviseNumericCellEditor editorTotalPAHT = new DeviseNumericCellEditor(fieldTotalHA);
|
131 |
final SQLTableElement totalpa = new SQLTableElement(fieldTotalHA, BigDecimal.class, editorTotalPAHT);
|
136 |
final SQLTableElement totalpa = new SQLTableElement(fieldTotalHA, BigDecimal.class, editorTotalPAHT);
|
132 |
totalpa.setRenderer(new DeviseTableCellRenderer());
|
137 |
totalpa.setRenderer(renderer);
|
133 |
totalpa.setEditable(false);
|
138 |
totalpa.setEditable(false);
|
134 |
list.add(totalpa);
|
139 |
list.add(totalpa);
|
135 |
|
140 |
|
136 |
final SQLField fieldTotalPV = e.getTable().getField("T_PV_HT");
|
141 |
final SQLField fieldTotalPV = e.getTable().getField("T_PV_HT");
|
137 |
final DeviseNumericCellEditor editorTotalPVHT = new DeviseNumericCellEditor(fieldTotalPV);
|
142 |
final DeviseNumericCellEditor editorTotalPVHT = new DeviseNumericCellEditor(fieldTotalPV);
|
138 |
final SQLTableElement totalpv = new SQLTableElement(fieldTotalPV, BigDecimal.class, editorTotalPVHT);
|
143 |
final SQLTableElement totalpv = new SQLTableElement(fieldTotalPV, BigDecimal.class, editorTotalPVHT);
|
139 |
totalpv.setEditable(false);
|
144 |
totalpv.setEditable(false);
|
140 |
totalpv.setRenderer(new DeviseTableCellRenderer());
|
145 |
totalpv.setRenderer(renderer);
|
141 |
list.add(totalpv);
|
146 |
list.add(totalpv);
|
142 |
|
147 |
|
143 |
final SQLField fieldMarge = e.getTable().getField("MARGE");
|
148 |
final SQLField fieldMarge = e.getTable().getField("MARGE");
|
144 |
final DeviseNumericCellEditor editorMarge = new DeviseNumericCellEditor(fieldMarge);
|
149 |
final DeviseNumericCellEditor editorMarge = new DeviseNumericCellEditor(fieldMarge);
|
145 |
final SQLTableElement marge = new SQLTableElement(fieldMarge, BigDecimal.class, editorMarge);
|
150 |
final SQLTableElement marge = new SQLTableElement(fieldMarge, BigDecimal.class, editorMarge);
|
146 |
marge.setEditable(false);
|
151 |
marge.setEditable(false);
|
147 |
marge.setRenderer(new DeviseTableCellRenderer());
|
152 |
marge.setRenderer(renderer);
|
148 |
list.add(marge);
|
153 |
list.add(marge);
|
149 |
|
154 |
|
150 |
SQLRowValues defautRow = new SQLRowValues(UndefinedRowValuesCache.getInstance().getDefaultRowValues(e.getTable()));
|
155 |
SQLRowValues defautRow = new SQLRowValues(UndefinedRowValuesCache.getInstance().getDefaultRowValues(e.getTable()));
|
151 |
this.model = new RowValuesTableModel(e, list, e.getTable().getField("NOM"), false, defautRow);
|
156 |
this.model = new RowValuesTableModel(e, list, e.getTable().getField("NOM"), false, defautRow);
|
152 |
|
157 |
|
153 |
this.table = new RowValuesTable(this.model, null, true);
|
158 |
this.table = new RowValuesTable(this.model, null, true);
|
154 |
ToolTipManager.sharedInstance().unregisterComponent(this.table);
|
159 |
ToolTipManager.sharedInstance().unregisterComponent(this.table);
|
155 |
ToolTipManager.sharedInstance().unregisterComponent(this.table.getTableHeader());
|
160 |
ToolTipManager.sharedInstance().unregisterComponent(this.table.getTableHeader());
|
156 |
|
161 |
|
- |
|
162 |
this.table.readState();
|
- |
|
163 |
|
- |
|
164 |
Map<String, Boolean> mapCustom = getCustomVisibilityMap();
|
- |
|
165 |
if (mapCustom != null) {
|
- |
|
166 |
for (String string : mapCustom.keySet()) {
|
- |
|
167 |
setColumnVisible(model.getColumnForField(string), mapCustom.get(string));
|
- |
|
168 |
}
|
- |
|
169 |
}
|
- |
|
170 |
|
- |
|
171 |
this.table.writeState();
|
- |
|
172 |
|
157 |
// Autocompletion
|
173 |
// Autocompletion
|
158 |
// AutoCompletionManager m = new AutoCompletionManager(tableElementNom,
|
174 |
// AutoCompletionManager m = new AutoCompletionManager(tableElementNom,
|
159 |
// ((ComptaPropsConfiguration)
|
175 |
// ((ComptaPropsConfiguration)
|
160 |
// Configuration.getInstance()).getSQLBaseSociete().getField("ECHANTILLON.NOM"), this.table,
|
176 |
// Configuration.getInstance()).getSQLBaseSociete().getField("ECHANTILLON.NOM"), this.table,
|
161 |
// this.table.getRowValuesTableModel());
|
177 |
// this.table.getRowValuesTableModel());
|
Line 212... |
Line 228... |
212 |
return r;
|
228 |
return r;
|
213 |
}
|
229 |
}
|
214 |
});
|
230 |
});
|
215 |
}
|
231 |
}
|
216 |
|
232 |
|
- |
|
233 |
protected void setColumnVisible(int col, boolean visible) {
|
- |
|
234 |
if (col >= 0) {
|
- |
|
235 |
XTableColumnModel columnModel = this.table.getColumnModel();
|
- |
|
236 |
columnModel.setColumnVisible(columnModel.getColumnByModelIndex(col), visible);
|
- |
|
237 |
}
|
- |
|
238 |
}
|
- |
|
239 |
|
- |
|
240 |
public static Map<String, Boolean> map = new HashMap<String, Boolean>();
|
- |
|
241 |
|
- |
|
242 |
protected Map<String, Boolean> getCustomVisibilityMap() {
|
- |
|
243 |
return map;
|
- |
|
244 |
}
|
- |
|
245 |
|
217 |
/**
|
246 |
/**
|
218 |
*
|
247 |
*
|
219 |
*/
|
248 |
*/
|
220 |
protected void uiInit() {
|
249 |
protected void uiInit() {
|
221 |
// Ui init
|
250 |
// Ui init
|