Revision 21299 branches/v2_0_0_prep/applications/appgvSIG/src/com/iver/cit/gvsig/project/documents/view/legend/gui/SymbolTable.java
SymbolTable.java | ||
---|---|---|
66 | 66 |
|
67 | 67 |
import org.gvsig.fmap.mapcontext.rendering.legend.NullIntervalValue; |
68 | 68 |
import org.gvsig.fmap.mapcontext.rendering.legend.NullUniqueValue; |
69 |
import org.gvsig.fmap.mapcontext.rendering.legend.NullValue; |
|
69 | 70 |
import org.gvsig.fmap.mapcontext.rendering.symbols.ISymbol; |
70 | 71 |
|
71 |
import com.hardcode.gdbms.engine.values.NullValue; |
|
72 | 72 |
import com.iver.andami.PluginServices; |
73 | 73 |
import com.iver.andami.ui.mdiFrame.JMenuItem; |
74 | 74 |
import com.iver.andami.ui.mdiFrame.JPopUpMenu; |
... | ... | |
82 | 82 |
/** |
83 | 83 |
* JPanel que contiene la tabla con los s?mbolos intervalos o valores y |
84 | 84 |
* etiquetado de estos valores. |
85 |
*
|
|
85 |
* |
|
86 | 86 |
* @author Vicente Caballero Navarro |
87 | 87 |
*/ |
88 | 88 |
public class SymbolTable extends JPanel { |
... | ... | |
94 | 94 |
private JTable table; |
95 | 95 |
private String type; |
96 | 96 |
private int shapeType; |
97 |
private OnTableMouseAdapter rightClickActions;
|
|
97 |
private OnTableMouseAdapter rightClickActions; |
|
98 | 98 |
|
99 | 99 |
/** |
100 | 100 |
* Crea un nuevo FSymbolTable. |
101 |
*
|
|
101 |
* |
|
102 | 102 |
* @param type |
103 | 103 |
* tipo de valor si es intervalo: "intervals" y si es por |
104 | 104 |
* valores: "values". |
... | ... | |
107 | 107 |
super(new GridLayout(1, 0)); |
108 | 108 |
this.type = type; |
109 | 109 |
this.shapeType = shapeType; |
110 |
|
|
110 |
|
|
111 | 111 |
rightClickActions = new OnTableMouseAdapter(); |
112 | 112 |
table = new JTable(); |
113 | 113 |
table.setModel(new MyTableModel()); |
114 | 114 |
table.setPreferredScrollableViewportSize(new Dimension(480, 110)); |
115 |
|
|
115 |
|
|
116 | 116 |
initializeCellEditors(); |
117 |
|
|
117 |
|
|
118 | 118 |
// Create the scroll pane and add the table to it. |
119 | 119 |
JScrollPane scrollPane = new JScrollPane(table); |
120 | 120 |
|
121 | 121 |
// Set up column sizes. |
122 | 122 |
// initColumnSizes(table); |
123 | 123 |
setUpSymbolColumn(table, table.getColumnModel().getColumn(0)); |
124 |
|
|
124 |
|
|
125 | 125 |
if(cellEditors.get(type) == null) |
126 | 126 |
throw new Error("Symbol table type not set!"); |
127 |
|
|
127 |
|
|
128 | 128 |
setUpValueColumn(table, table.getColumnModel().getColumn(1),cellEditors.get(this.type)); |
129 | 129 |
setUpLabelColumn(table, table.getColumnModel().getColumn(2)); |
130 | 130 |
|
... | ... | |
141 | 141 |
this.cellEditors.put(this.VALUES_TYPE, new ValueCellEditor()); |
142 | 142 |
} |
143 | 143 |
/** |
144 |
* A?ade un nuevo CellEditor a la lista de disponibles
|
|
145 |
*
|
|
144 |
* A?ade un nuevo CellEditor a la lista de disponibles |
|
145 |
* |
|
146 | 146 |
* @param key String con el nombre identificativo del CellEditor |
147 | 147 |
* @param cellEditor CellEditor que va a ser a?adido |
148 | 148 |
*/ |
... | ... | |
151 | 151 |
} |
152 | 152 |
/** |
153 | 153 |
* Obtiene el valor de los elementos de una fila seleccionada |
154 |
*
|
|
154 |
* |
|
155 | 155 |
* @return Object[] Array con los objetos de cada una de las columnas de la fila seleccionada |
156 | 156 |
*/ |
157 | 157 |
public Object[] getSelectedRowElements() { |
... | ... | |
164 | 164 |
return null; |
165 | 165 |
|
166 | 166 |
for (int i = 0; i < 3; i++) { |
167 |
values[i] = m.getValueAt(selectedRows[0], i);
|
|
167 |
values[i] = m.getValueAt(selectedRows[0], i); |
|
168 | 168 |
} |
169 | 169 |
|
170 | 170 |
return values; |
171 | 171 |
} |
172 | 172 |
/** |
173 | 173 |
* A?ade una fila al modelo. |
174 |
*
|
|
174 |
* |
|
175 | 175 |
* @param vector |
176 | 176 |
* Fila en forma de vector de Object para a?adir al modelo. |
177 | 177 |
*/ |
178 | 178 |
public void addRow(Object[] vector) { |
179 | 179 |
MyTableModel m = (MyTableModel) table.getModel(); |
180 | 180 |
m.addRow(vector); |
181 |
|
|
181 |
|
|
182 | 182 |
} |
183 | 183 |
|
184 | 184 |
/** |
185 | 185 |
* Elimina la fila que tiene como clave el objeto que se pasa como |
186 | 186 |
* par?metro. |
187 |
*
|
|
187 |
* |
|
188 | 188 |
* @param obj |
189 | 189 |
* clave del objeto a eliminar. |
190 | 190 |
*/ |
... | ... | |
218 | 218 |
/** |
219 | 219 |
* Rellena la tabla con los s?mbolos valores y descripciones que se pasan |
220 | 220 |
* como par?metro. |
221 |
*
|
|
221 |
* |
|
222 | 222 |
* @param symbols |
223 | 223 |
* Array de s?mbolos |
224 | 224 |
* @param values |
... | ... | |
238 | 238 |
|
239 | 239 |
/** |
240 | 240 |
* A?ade una fila con los objetos que se pasan como par?metros. |
241 |
*
|
|
241 |
* |
|
242 | 242 |
* @param symbol |
243 | 243 |
* s?mbolo de la fila. |
244 | 244 |
* @param value |
... | ... | |
256 | 256 |
|
257 | 257 |
/** |
258 | 258 |
* Devuelve el valor a partie del n?mero de fila y columna. |
259 |
*
|
|
259 |
* |
|
260 | 260 |
* @param row |
261 | 261 |
* n?mero de fila. |
262 | 262 |
* @param col |
263 | 263 |
* n?mero de columna. |
264 |
*
|
|
264 |
* |
|
265 | 265 |
* @return Objeto. |
266 | 266 |
*/ |
267 | 267 |
public Object getFieldValue(int row, int col) { |
... | ... | |
272 | 272 |
|
273 | 273 |
/** |
274 | 274 |
* Devuelve el n?mero total de filas que contiene el modelo. |
275 |
*
|
|
275 |
* |
|
276 | 276 |
* @return N?mero de filas. |
277 | 277 |
*/ |
278 | 278 |
public int getRowCount() { |
... | ... | |
294 | 294 |
/** |
295 | 295 |
* Inicializa el cell editor de tipo descripci?n de la columna que se pasa |
296 | 296 |
* como par?metro. |
297 |
*
|
|
297 |
* |
|
298 | 298 |
* @param table2 |
299 | 299 |
* Tabla. |
300 | 300 |
* @param column |
... | ... | |
308 | 308 |
/** |
309 | 309 |
* Inicializa el cell editor de tipo valor de la columna que se pasa como |
310 | 310 |
* par?metro. |
311 |
*
|
|
311 |
* |
|
312 | 312 |
* @param table2 |
313 | 313 |
* Tabla. |
314 | 314 |
* @param column |
315 | 315 |
* Columna. |
316 |
* @param tableCellEditor
|
|
316 |
* @param tableCellEditor |
|
317 | 317 |
*/ |
318 | 318 |
public void setUpValueColumn(JTable table2,TableColumn column, TableCellEditor tableCellEditor) { |
319 | 319 |
column.setCellEditor(tableCellEditor); |
... | ... | |
321 | 321 |
/** |
322 | 322 |
* Inicializa el cell editor de tipo s?mbolo de la columna que se pasa como |
323 | 323 |
* par?metro. |
324 |
*
|
|
324 |
* |
|
325 | 325 |
* @param table2 |
326 | 326 |
* Tabla. |
327 | 327 |
* @param column |
... | ... | |
344 | 344 |
|
345 | 345 |
/** |
346 | 346 |
* Modelo que propio que se aplica a la tabla. |
347 |
*
|
|
347 |
* |
|
348 | 348 |
* @author Vicente Caballero Navarro |
349 | 349 |
*/ |
350 | 350 |
class MyTableModel extends DefaultTableModel { |
... | ... | |
358 | 358 |
|
359 | 359 |
/** |
360 | 360 |
* Devuelve el n?mero de columnas. |
361 |
*
|
|
361 |
* |
|
362 | 362 |
* @return N?mero de columnas. |
363 | 363 |
*/ |
364 | 364 |
public int getColumnCount() { |
... | ... | |
367 | 367 |
|
368 | 368 |
/** |
369 | 369 |
* Devuelve el String del valor de la columna. |
370 |
*
|
|
370 |
* |
|
371 | 371 |
* @param col |
372 | 372 |
* N?mero de columna. |
373 |
*
|
|
373 |
* |
|
374 | 374 |
* @return Nombre de la columna. |
375 | 375 |
*/ |
376 | 376 |
public String getColumnName(int col) { |
... | ... | |
401 | 401 |
} |
402 | 402 |
|
403 | 403 |
} |
404 |
|
|
404 |
|
|
405 | 405 |
private class OnTableMouseAdapter extends MouseAdapter { |
406 | 406 |
|
407 | 407 |
private JPopUpMenu menu = new JPopUpMenu(); |
... | ... | |
431 | 431 |
for (int i = selectedRows.length - 1; i > 0; i--) { |
432 | 432 |
model.removeRow(selectedRows[i]); |
433 | 433 |
} |
434 |
|
|
434 |
|
|
435 | 435 |
model.setValueAt(symboToBeApplied, theRow, 0); |
436 | 436 |
model.setValueAt(labelToBeApplied, theRow, 2); |
437 | 437 |
table.clearSelection(); |
... | ... | |
465 | 465 |
for (int i = selectedRows.length - 1; i > 0; i--) { |
466 | 466 |
model.removeRow(selectedRows[i]); |
467 | 467 |
} |
468 |
|
|
468 |
|
|
469 | 469 |
model.setValueAt(symboToBeApplied, theRow, 0); |
470 | 470 |
model.setValueAt(labelToBeApplied, theRow, 2); |
471 | 471 |
table.clearSelection(); |
... | ... | |
486 | 486 |
} else { |
487 | 487 |
menuEmpty = true; |
488 | 488 |
} |
489 |
|
|
489 |
|
|
490 | 490 |
} |
491 | 491 |
|
492 | 492 |
@Override |
... | ... | |
501 | 501 |
} |
502 | 502 |
|
503 | 503 |
} |
504 |
|
|
504 |
|
|
505 | 505 |
@Override |
506 | 506 |
public void mouseClicked(MouseEvent e) { |
507 | 507 |
super.mouseClicked(e); |
Also available in: Unified diff