root / trunk / applications / appgvSIG / src / com / iver / cit / gvsig / project / ProjectWindow.java @ 585
History | View | Annotate | Download (32.9 KB)
1 | 312 | fernando | package com.iver.cit.gvsig.project; |
---|---|---|---|
2 | |||
3 | 464 | fernando | import java.beans.PropertyChangeEvent; |
4 | import java.beans.PropertyChangeListener; |
||
5 | import java.io.File; |
||
6 | import java.text.DateFormat; |
||
7 | 312 | fernando | |
8 | 464 | fernando | import javax.swing.ButtonGroup; |
9 | import javax.swing.JDialog; |
||
10 | import javax.swing.JOptionPane; |
||
11 | import javax.swing.JPanel; |
||
12 | |||
13 | import com.hardcode.driverManager.DriverLoadException; |
||
14 | 427 | fernando | import com.hardcode.gdbms.engine.data.DBDriver; |
15 | import com.hardcode.gdbms.engine.data.DataSource; |
||
16 | import com.hardcode.gdbms.engine.data.DataSourceFactory; |
||
17 | 438 | fernando | import com.hardcode.gdbms.engine.data.FileDriver; |
18 | 312 | fernando | import com.iver.cit.gvsig.ProjectExtension; |
19 | 570 | luisw | import com.iver.cit.gvsig.fmap.drivers.GeorreferencedRasterDriver; |
20 | 464 | fernando | import com.iver.cit.gvsig.fmap.layers.SelectableDataSource; |
21 | 427 | fernando | import com.iver.cit.gvsig.gui.DataBaseOpenDialog; |
22 | import com.iver.cit.gvsig.gui.FOpenDialog; |
||
23 | import com.iver.cit.gvsig.gui.FileOpenDialog; |
||
24 | import com.iver.cit.gvsig.gui.Table; |
||
25 | 312 | fernando | import com.iver.cit.gvsig.gui.layout.Layout; |
26 | 412 | vcaballero | import com.iver.cit.gvsig.project.castor.Project; |
27 | import com.iver.cit.gvsig.project.castor.ProjectElement; |
||
28 | import com.iver.cit.gvsig.project.castor.ProjectMap; |
||
29 | import com.iver.cit.gvsig.project.castor.ProjectTable; |
||
30 | import com.iver.cit.gvsig.project.castor.ProjectView; |
||
31 | 312 | fernando | import com.iver.mdiApp.App; |
32 | import com.iver.mdiApp.Utilities; |
||
33 | import com.iver.mdiApp.ui.MDIManager.SingletonView; |
||
34 | import com.iver.mdiApp.ui.MDIManager.View; |
||
35 | import com.iver.mdiApp.ui.MDIManager.ViewInfo; |
||
36 | import com.iver.utiles.DefaultListModel; |
||
37 | |||
38 | |||
39 | /**
|
||
40 | * Clase principal del proyecto donde se puede operar para crear vistas,
|
||
41 | * tablas, mapas, ...
|
||
42 | *
|
||
43 | * @author Fernando Gonz?lez Cort?s
|
||
44 | */
|
||
45 | 438 | fernando | public class ProjectWindow extends JPanel implements PropertyChangeListener, |
46 | View, SingletonView {
|
||
47 | 312 | fernando | private javax.swing.JPanel jPanel = null; |
48 | private javax.swing.JRadioButton btnVistas = null; |
||
49 | private javax.swing.JRadioButton btnTablas = null; |
||
50 | private javax.swing.JRadioButton btnMapas = null; |
||
51 | private ButtonGroup grupo = new ButtonGroup(); |
||
52 | private javax.swing.JPanel jPanel1 = null; |
||
53 | private javax.swing.JList lstDocs = null; |
||
54 | private javax.swing.JPanel jPanel2 = null; |
||
55 | private javax.swing.JButton btnNuevo = null; |
||
56 | private javax.swing.JButton btnPropiedades = null; |
||
57 | private javax.swing.JButton btnAbrir = null; |
||
58 | private javax.swing.JButton btnBorrar = null; |
||
59 | private javax.swing.JButton btnRenombrar = null; |
||
60 | private javax.swing.JPanel jPanel3 = null; |
||
61 | private javax.swing.JLabel jLabel = null; |
||
62 | private javax.swing.JLabel lblNombreSesion = null; |
||
63 | private javax.swing.JLabel jLabel1 = null; |
||
64 | private javax.swing.JLabel lblGuardado = null; |
||
65 | private javax.swing.JLabel jLabel2 = null; |
||
66 | private javax.swing.JLabel lblFecha = null; |
||
67 | private javax.swing.JButton btnImportar = null; |
||
68 | private javax.swing.JButton btnExportar = null; |
||
69 | private javax.swing.JButton btnEditar = null; |
||
70 | |||
71 | /** Proyecto representado en la vista */
|
||
72 | private Project p;
|
||
73 | |||
74 | /**
|
||
75 | * Extension con la informaci?n, entre otras, sobre las extensiones para
|
||
76 | * las tablas
|
||
77 | */
|
||
78 | private ProjectExtension projectExtension;
|
||
79 | private javax.swing.JScrollPane jScrollPane = null; |
||
80 | 438 | fernando | private javax.swing.JPanel jPanel4 = null; |
81 | private ViewInfo m_viewinfo = null; |
||
82 | 312 | fernando | |
83 | /**
|
||
84 | * This is the default constructor
|
||
85 | *
|
||
86 | * @param project Extension
|
||
87 | */
|
||
88 | public ProjectWindow(ProjectExtension project) {
|
||
89 | super();
|
||
90 | |||
91 | initialize(); |
||
92 | |||
93 | projectExtension = project; |
||
94 | |||
95 | refreshControls(); |
||
96 | } |
||
97 | |||
98 | /**
|
||
99 | * Asigna el proyecto a la ventana
|
||
100 | *
|
||
101 | * @param p Proyecto con el que se operar? a trav?s de este di?logo
|
||
102 | */
|
||
103 | public void setProject(Project p) { |
||
104 | this.p = p;
|
||
105 | p.addPropertyChangeListener(this);
|
||
106 | refreshControls(); |
||
107 | } |
||
108 | |||
109 | /**
|
||
110 | * Activa los botones de la botonera del medio o los desactiva en funci?n
|
||
111 | * de que est? seleccionado o no un elemento de proyecto en la lista del
|
||
112 | * medio
|
||
113 | */
|
||
114 | private void activarBotones() { |
||
115 | if (lstDocs.getSelectedIndex() != -1) { |
||
116 | btnAbrir.setEnabled(true);
|
||
117 | btnBorrar.setEnabled(true);
|
||
118 | btnRenombrar.setEnabled(true);
|
||
119 | btnPropiedades.setEnabled(true);
|
||
120 | } else {
|
||
121 | btnAbrir.setEnabled(false);
|
||
122 | btnBorrar.setEnabled(false);
|
||
123 | btnRenombrar.setEnabled(false);
|
||
124 | btnPropiedades.setEnabled(false);
|
||
125 | } |
||
126 | } |
||
127 | |||
128 | /**
|
||
129 | * Refresca la lista de elementos de proyecto con vistas, mapas o tablas,
|
||
130 | * seg?n la opci?n activada
|
||
131 | */
|
||
132 | private void refreshList() { |
||
133 | if (p != null) { |
||
134 | DefaultListModel model;
|
||
135 | |||
136 | if (btnMapas.isSelected()) {
|
||
137 | model = new DefaultListModel(p.getMaps()); |
||
138 | 438 | fernando | |
139 | // getBtnNuevo().setEnabled(true);
|
||
140 | 312 | fernando | } else if (btnTablas.isSelected()) { |
141 | model = new DefaultListModel(p.getTables()); |
||
142 | 438 | fernando | |
143 | // getBtnNuevo().setEnabled(false);
|
||
144 | 312 | fernando | } else {
|
145 | model = new DefaultListModel(p.getViews()); |
||
146 | 438 | fernando | |
147 | // getBtnNuevo().setEnabled(true);
|
||
148 | 312 | fernando | } |
149 | |||
150 | lstDocs.setModel(model); |
||
151 | |||
152 | activarBotones(); |
||
153 | } |
||
154 | } |
||
155 | |||
156 | /**
|
||
157 | * Refresca las etiquetas con la informaci?n del proyecto
|
||
158 | */
|
||
159 | private void refreshProperties() { |
||
160 | if (p != null) { |
||
161 | String aux;
|
||
162 | |||
163 | lblNombreSesion.setText(p.getName()); |
||
164 | |||
165 | String path = p.getPath();
|
||
166 | |||
167 | if (path != null) { |
||
168 | File f = new File(path); |
||
169 | lblGuardado.setText(f.toString()); |
||
170 | } else {
|
||
171 | lblGuardado.setText("");
|
||
172 | } |
||
173 | |||
174 | lblFecha.setText(p.getCreationDate()); |
||
175 | } |
||
176 | } |
||
177 | |||
178 | /**
|
||
179 | * Refresca todo el di?logo
|
||
180 | */
|
||
181 | public void refreshControls() { |
||
182 | refreshList(); |
||
183 | refreshProperties(); |
||
184 | } |
||
185 | |||
186 | /**
|
||
187 | * This method initializes this
|
||
188 | */
|
||
189 | private void initialize() { |
||
190 | setLayout(new java.awt.FlowLayout());
|
||
191 | add(getJPanel(), null);
|
||
192 | add(getJPanel1(), null);
|
||
193 | add(getJPanel3(), null);
|
||
194 | |||
195 | this.setSize(400, 450); |
||
196 | 438 | fernando | this.setPreferredSize(new java.awt.Dimension(400, 430)); |
197 | 312 | fernando | grupo.add(btnVistas); |
198 | grupo.add(btnTablas); |
||
199 | grupo.add(btnMapas); |
||
200 | |||
201 | btnVistas.setSelected(true);
|
||
202 | } |
||
203 | |||
204 | /**
|
||
205 | * Crea un nuevo project element
|
||
206 | 438 | fernando | *
|
207 | * @throws Exception DOCUMENT ME!
|
||
208 | 312 | fernando | */
|
209 | private void nuevo() throws Exception { |
||
210 | 438 | fernando | DateFormat df = DateFormat.getDateInstance(); |
211 | |||
212 | 312 | fernando | if (btnMapas.isSelected()) {
|
213 | 438 | fernando | ProjectMap map = ProjectFactory.createMap(Utilities.getMessage(
|
214 | this, "untitled")); |
||
215 | 312 | fernando | map.setModel(new Layout());
|
216 | map.getModel().setProjectMap(map); |
||
217 | p.addMap(map); |
||
218 | } else if (btnTablas.isSelected()) { |
||
219 | 438 | fernando | try {
|
220 | FOpenDialog fopen = new FOpenDialog();
|
||
221 | 570 | luisw | FileOpenDialog fod = new FileOpenDialog(new Class[]{FileDriver.class, GeorreferencedRasterDriver.class}); |
222 | 438 | fernando | DataBaseOpenDialog dbod = new DataBaseOpenDialog();
|
223 | dbod.setClasses(new Class[] { DBDriver.class }); |
||
224 | fopen.addTab("Fichero", fod);
|
||
225 | fopen.addTab("Base de datos", dbod);
|
||
226 | App.instance.getMDIContext().addView(fopen); |
||
227 | 312 | fernando | |
228 | 438 | fernando | if (fopen.isAccepted()) {
|
229 | JPanel panel = fopen.getSelectedTab();
|
||
230 | 427 | fernando | |
231 | 438 | fernando | if (panel instanceof FileOpenDialog) { |
232 | File[] files = fod.getFiles(); |
||
233 | for (int i = 0; i < files.length; i++) { |
||
234 | String name = files[i].getName();
|
||
235 | 550 | fernando | DataSourceFactory.addFileDataSource(fod.getDriverName(), name, files[i].getAbsolutePath(), files[i].getAbsolutePath()); |
236 | 438 | fernando | |
237 | DataSource dataSource = DataSourceFactory.createRandomDataSource(name);
|
||
238 | 550 | fernando | SelectableDataSource sds = new SelectableDataSource(name, dataSource);
|
239 | 438 | fernando | ProjectExtension ext = (ProjectExtension) App.instance.getPc() |
240 | .getExtension(ProjectExtension.class); |
||
241 | 550 | fernando | ProjectTable projectTable = ProjectFactory.createTable(name, sds); |
242 | 438 | fernando | ext.getProject().addTable(projectTable); |
243 | 457 | fernando | |
244 | Table t = new Table();
|
||
245 | t.setModel(projectTable, null);
|
||
246 | App.instance.getMDIContext().addView(t); |
||
247 | 438 | fernando | } |
248 | } else if (panel instanceof DataBaseOpenDialog) { |
||
249 | String driverName = dbod.getDriverName();
|
||
250 | int port = -1; |
||
251 | |||
252 | try {
|
||
253 | port = Integer.parseInt(dbod.getPort());
|
||
254 | } catch (NumberFormatException e) { |
||
255 | } |
||
256 | |||
257 | String name = dbod.getHost() + "/" + |
||
258 | dbod.getDataBase(); |
||
259 | |||
260 | if (port != -1) { |
||
261 | name = dbod.getHost() + ":" + port + "/" + |
||
262 | dbod.getDataBase(); |
||
263 | } |
||
264 | |||
265 | String user = dbod.getUser().trim();
|
||
266 | String password = dbod.getPassword();
|
||
267 | |||
268 | if (user.equals("")) { |
||
269 | user = null;
|
||
270 | password = null;
|
||
271 | } |
||
272 | |||
273 | DataSourceFactory.addDBDataSource(name, dbod.getHost(), |
||
274 | port, user, password, dbod.getDataBase(), |
||
275 | dbod.getTable(), driverName); |
||
276 | |||
277 | DataSource dataSource = DataSourceFactory.createRandomDataSource(name);
|
||
278 | 570 | luisw | SelectableDataSource sds = new SelectableDataSource(dataSource.getName(), dataSource);
|
279 | 438 | fernando | |
280 | ProjectExtension ext = (ProjectExtension) App.instance.getPc() |
||
281 | .getExtension(ProjectExtension.class); |
||
282 | 550 | fernando | ProjectTable projectTable = ProjectFactory.createTable(name, sds); |
283 | 438 | fernando | ext.getProject().addTable(projectTable); |
284 | 457 | fernando | |
285 | Table t = new Table();
|
||
286 | t.setModel(projectTable, null);
|
||
287 | App.instance.getMDIContext().addView(t); |
||
288 | 438 | fernando | } |
289 | } |
||
290 | } catch (DriverLoadException e) {
|
||
291 | App.instance.getNm().addError("Error al cargar los drivers", e);
|
||
292 | } |
||
293 | 312 | fernando | } else {
|
294 | 438 | fernando | ProjectView vista = ProjectFactory.createView(Utilities.getMessage(
|
295 | this, "untitled")); |
||
296 | 312 | fernando | p.addView(vista); |
297 | } |
||
298 | } |
||
299 | |||
300 | /**
|
||
301 | * Abre la ventana de un nuevo project element
|
||
302 | */
|
||
303 | private void abrir() { |
||
304 | if (btnMapas.isSelected()) {
|
||
305 | 438 | fernando | int index = lstDocs.getSelectedIndex();
|
306 | 312 | fernando | |
307 | 438 | fernando | if (index == -1) { |
308 | return;
|
||
309 | } |
||
310 | 312 | fernando | |
311 | 448 | vcaballero | Layout l = (Layout)((ProjectMap) p.getMaps().get(index)).getModel(); |
312 | 438 | fernando | l.fullRect(); |
313 | App.instance.getMDIContext().addView(l); |
||
314 | 312 | fernando | } else if (btnTablas.isSelected()) { |
315 | 438 | fernando | com.iver.cit.gvsig.gui.Table vista = new com.iver.cit.gvsig.gui.Table();
|
316 | int index = lstDocs.getSelectedIndex();
|
||
317 | 312 | fernando | |
318 | 438 | fernando | if (index == -1) { |
319 | return;
|
||
320 | } |
||
321 | 312 | fernando | |
322 | 457 | fernando | vista.setModel((ProjectTable) p.getTables().get(index), null);
|
323 | 438 | fernando | App.instance.getMDIContext().addView(vista); |
324 | 312 | fernando | } else {
|
325 | com.iver.cit.gvsig.gui.View vista = new com.iver.cit.gvsig.gui.View();
|
||
326 | 438 | fernando | int index = lstDocs.getSelectedIndex();
|
327 | 312 | fernando | |
328 | 438 | fernando | if (index == -1) { |
329 | return;
|
||
330 | } |
||
331 | 312 | fernando | |
332 | 438 | fernando | vista.setModel((ProjectView) p.getViews().get(index)); |
333 | 312 | fernando | App.instance.getMDIContext().addView(vista); |
334 | 442 | vcaballero | vista.repaintMap(); |
335 | 448 | vcaballero | vista.getTOC().refresh(); |
336 | 312 | fernando | } |
337 | } |
||
338 | |||
339 | /**
|
||
340 | * Cambia el nombre de un project element
|
||
341 | */
|
||
342 | private void renombrar() { |
||
343 | ProjectElement elem = null;
|
||
344 | int index = lstDocs.getSelectedIndex();
|
||
345 | |||
346 | if (index == -1) { |
||
347 | return;
|
||
348 | } |
||
349 | |||
350 | if (btnMapas.isSelected()) {
|
||
351 | elem = (ProjectElement) p.getMaps().get(index); |
||
352 | } else if (btnTablas.isSelected()) { |
||
353 | elem = (ProjectElement) p.getTables().get(index); |
||
354 | } else {
|
||
355 | elem = (ProjectElement) p.getViews().get(index); |
||
356 | } |
||
357 | |||
358 | JOptionPane pane = new JOptionPane(); |
||
359 | pane.setMessage(Utilities.getMessage(this, "introduce_nombre")); |
||
360 | pane.setMessageType(JOptionPane.QUESTION_MESSAGE);
|
||
361 | pane.setWantsInput(true);
|
||
362 | pane.setInitialSelectionValue(elem.getName()); |
||
363 | |||
364 | JDialog dlg = pane.createDialog(App.instance.getMDIFrame(),
|
||
365 | Utilities.getMessage(this, "renombrar")); |
||
366 | dlg.setModal(true);
|
||
367 | dlg.show(); |
||
368 | |||
369 | String nuevoNombre = pane.getInputValue().toString().trim();
|
||
370 | |||
371 | if (nuevoNombre.length() == 0) { |
||
372 | return;
|
||
373 | } |
||
374 | |||
375 | if (nuevoNombre == null) { |
||
376 | return;
|
||
377 | } |
||
378 | |||
379 | elem.setName(nuevoNombre); |
||
380 | |||
381 | refreshList(); |
||
382 | } |
||
383 | |||
384 | /**
|
||
385 | * Borra un project element
|
||
386 | */
|
||
387 | private void borrar() { |
||
388 | int res = JOptionPane.showConfirmDialog(App.instance.getMDIFrame(), |
||
389 | Utilities.getMessage(this, "confirmar_borrar"), |
||
390 | Utilities.getMessage(this, "borrar"), |
||
391 | JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE); |
||
392 | |||
393 | if (res == JOptionPane.YES_OPTION) { |
||
394 | int index = lstDocs.getSelectedIndex();
|
||
395 | |||
396 | if (btnMapas.isSelected()) {
|
||
397 | p.delMap(index); |
||
398 | } else if (btnTablas.isSelected()) { |
||
399 | p.delTable(index); |
||
400 | } else {
|
||
401 | p.delView(index); |
||
402 | } |
||
403 | |||
404 | refreshList(); |
||
405 | } |
||
406 | } |
||
407 | |||
408 | /**
|
||
409 | * Muestra el di?logo de propiedades de un project element
|
||
410 | */
|
||
411 | private void propiedades() { |
||
412 | int index = lstDocs.getSelectedIndex();
|
||
413 | |||
414 | if (index == -1) { |
||
415 | return;
|
||
416 | } |
||
417 | |||
418 | 438 | fernando | View dlg;
|
419 | |||
420 | 312 | fernando | if (btnMapas.isSelected()) {
|
421 | 438 | fernando | dlg = new MapProperties((ProjectMap) p.getMaps().get(index));
|
422 | 312 | fernando | } else if (btnTablas.isSelected()) { |
423 | 438 | fernando | dlg = new TableProperties((ProjectTable) p.getTables().get(index));
|
424 | 312 | fernando | } else {
|
425 | 438 | fernando | dlg = new ViewProperties((ProjectView) p.getViews().get(index));
|
426 | 312 | fernando | } |
427 | |||
428 | 438 | fernando | App.instance.getMDIContext().addView(dlg); |
429 | |||
430 | 312 | fernando | refreshControls(); |
431 | lstDocs.setSelectedIndex(index); |
||
432 | } |
||
433 | |||
434 | /**
|
||
435 | * This method initializes jPanel
|
||
436 | *
|
||
437 | * @return javax.swing.JPanel
|
||
438 | */
|
||
439 | private javax.swing.JPanel getJPanel() {
|
||
440 | if (jPanel == null) { |
||
441 | jPanel = new javax.swing.JPanel();
|
||
442 | |||
443 | java.awt.FlowLayout layFlowLayout1 = new java.awt.FlowLayout();
|
||
444 | layFlowLayout1.setHgap(15);
|
||
445 | jPanel.setLayout(layFlowLayout1); |
||
446 | jPanel.add(getBtnVistas(), null);
|
||
447 | jPanel.add(getBtnTablas(), null);
|
||
448 | jPanel.add(getBtnMapas(), null);
|
||
449 | jPanel.setName("tipoDocPanel");
|
||
450 | 438 | fernando | jPanel.setPreferredSize(new java.awt.Dimension(390, 125)); |
451 | 312 | fernando | jPanel.setBorder(javax.swing.BorderFactory.createTitledBorder( |
452 | null, Utilities.getMessage(this, "tipos_de_documentos"), |
||
453 | javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, |
||
454 | javax.swing.border.TitledBorder.DEFAULT_POSITION, null, null)); |
||
455 | } |
||
456 | |||
457 | return jPanel;
|
||
458 | } |
||
459 | |||
460 | /**
|
||
461 | * This method initializes btnVistas
|
||
462 | *
|
||
463 | * @return javax.swing.JRadioButton
|
||
464 | */
|
||
465 | private javax.swing.JRadioButton getBtnVistas() {
|
||
466 | if (btnVistas == null) { |
||
467 | btnVistas = new javax.swing.JRadioButton();
|
||
468 | btnVistas.setIcon(new javax.swing.ImageIcon(
|
||
469 | this.getClass().getClassLoader().getResource("images/Vista.png"))); |
||
470 | btnVistas.setSelectedIcon(new javax.swing.ImageIcon(
|
||
471 | this.getClass().getClassLoader().getResource("images/Vista_sel.png"))); |
||
472 | btnVistas.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); |
||
473 | btnVistas.setText(Utilities.getMessage(this, "vistas")); |
||
474 | btnVistas.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); |
||
475 | btnVistas.setName("vistasBtn");
|
||
476 | btnVistas.addChangeListener(new javax.swing.event.ChangeListener() {
|
||
477 | public void stateChanged(javax.swing.event.ChangeEvent e) { |
||
478 | refreshList(); |
||
479 | } |
||
480 | }); |
||
481 | } |
||
482 | |||
483 | return btnVistas;
|
||
484 | } |
||
485 | |||
486 | /**
|
||
487 | * This method initializes btnTablas
|
||
488 | *
|
||
489 | * @return javax.swing.JRadioButton
|
||
490 | */
|
||
491 | private javax.swing.JRadioButton getBtnTablas() {
|
||
492 | if (btnTablas == null) { |
||
493 | btnTablas = new javax.swing.JRadioButton();
|
||
494 | btnTablas.setIcon(new javax.swing.ImageIcon(
|
||
495 | this.getClass().getClassLoader().getResource("images/tablas.png"))); |
||
496 | btnTablas.setSelectedIcon(new javax.swing.ImageIcon(
|
||
497 | this.getClass().getClassLoader().getResource("images/tablas_sel.png"))); |
||
498 | btnTablas.setText(Utilities.getMessage(this, "tablas")); |
||
499 | btnTablas.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); |
||
500 | btnTablas.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); |
||
501 | btnTablas.setName("tablasBtn");
|
||
502 | btnTablas.addChangeListener(new javax.swing.event.ChangeListener() {
|
||
503 | public void stateChanged(javax.swing.event.ChangeEvent e) { |
||
504 | refreshList(); |
||
505 | } |
||
506 | }); |
||
507 | } |
||
508 | |||
509 | return btnTablas;
|
||
510 | } |
||
511 | |||
512 | /**
|
||
513 | * This method initializes btnMapas
|
||
514 | *
|
||
515 | * @return javax.swing.JRadioButton
|
||
516 | */
|
||
517 | private javax.swing.JRadioButton getBtnMapas() {
|
||
518 | if (btnMapas == null) { |
||
519 | btnMapas = new javax.swing.JRadioButton();
|
||
520 | btnMapas.setIcon(new javax.swing.ImageIcon(
|
||
521 | this.getClass().getClassLoader().getResource("images/mapas.png"))); |
||
522 | btnMapas.setSelectedIcon(new javax.swing.ImageIcon(
|
||
523 | this.getClass().getClassLoader().getResource("images/mapas_sel.png"))); |
||
524 | btnMapas.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); |
||
525 | btnMapas.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); |
||
526 | btnMapas.setText(Utilities.getMessage(this, "mapas")); |
||
527 | btnMapas.addChangeListener(new javax.swing.event.ChangeListener() {
|
||
528 | public void stateChanged(javax.swing.event.ChangeEvent e) { |
||
529 | refreshList(); |
||
530 | } |
||
531 | }); |
||
532 | } |
||
533 | |||
534 | return btnMapas;
|
||
535 | } |
||
536 | |||
537 | /**
|
||
538 | * This method initializes jPanel1
|
||
539 | *
|
||
540 | * @return javax.swing.JPanel
|
||
541 | */
|
||
542 | private javax.swing.JPanel getJPanel1() {
|
||
543 | if (jPanel1 == null) { |
||
544 | jPanel1 = new javax.swing.JPanel();
|
||
545 | |||
546 | java.awt.BorderLayout layBorderLayout2 = new java.awt.BorderLayout();
|
||
547 | layBorderLayout2.setVgap(30);
|
||
548 | jPanel1.setLayout(layBorderLayout2); |
||
549 | jPanel1.add(getJPanel2(), java.awt.BorderLayout.EAST); |
||
550 | jPanel1.add(getJScrollPane(), java.awt.BorderLayout.CENTER); |
||
551 | 438 | fernando | jPanel1.setPreferredSize(new java.awt.Dimension(390, 170)); |
552 | 312 | fernando | jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder( |
553 | null, Utilities.getMessage(this, "documentos_existentes"), |
||
554 | javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, |
||
555 | javax.swing.border.TitledBorder.DEFAULT_POSITION, null, null)); |
||
556 | } |
||
557 | |||
558 | return jPanel1;
|
||
559 | } |
||
560 | |||
561 | /**
|
||
562 | * This method initializes lstDocs
|
||
563 | *
|
||
564 | * @return javax.swing.JList
|
||
565 | */
|
||
566 | private javax.swing.JList getLstDocs() {
|
||
567 | if (lstDocs == null) { |
||
568 | lstDocs = new javax.swing.JList();
|
||
569 | 438 | fernando | lstDocs.addMouseListener(new java.awt.event.MouseAdapter() {
|
570 | public void mouseClicked(java.awt.event.MouseEvent e) { |
||
571 | if (e.getClickCount() == 2) { |
||
572 | abrir(); |
||
573 | } |
||
574 | } |
||
575 | }); |
||
576 | 312 | fernando | lstDocs.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
|
577 | public void valueChanged( |
||
578 | javax.swing.event.ListSelectionEvent e) { |
||
579 | activarBotones(); |
||
580 | } |
||
581 | }); |
||
582 | } |
||
583 | |||
584 | return lstDocs;
|
||
585 | } |
||
586 | |||
587 | /**
|
||
588 | * This method initializes jPanel2
|
||
589 | *
|
||
590 | * @return javax.swing.JPanel
|
||
591 | */
|
||
592 | private javax.swing.JPanel getJPanel2() {
|
||
593 | if (jPanel2 == null) { |
||
594 | jPanel2 = new javax.swing.JPanel();
|
||
595 | 438 | fernando | |
596 | 312 | fernando | java.awt.FlowLayout layFlowLayout11 = new java.awt.FlowLayout();
|
597 | layFlowLayout11.setVgap(5);
|
||
598 | jPanel2.setLayout(layFlowLayout11); |
||
599 | jPanel2.add(getBtnNuevo(), null);
|
||
600 | jPanel2.add(getBtnAbrir(), null);
|
||
601 | jPanel2.add(getBtnRenombrar(), null);
|
||
602 | jPanel2.add(getBtnBorrar(), null);
|
||
603 | jPanel2.add(getBtnPropiedades(), null);
|
||
604 | 438 | fernando | jPanel2.setPreferredSize(new java.awt.Dimension(100, 50)); |
605 | 312 | fernando | } |
606 | |||
607 | return jPanel2;
|
||
608 | } |
||
609 | |||
610 | /**
|
||
611 | * This method initializes btnNuevo
|
||
612 | *
|
||
613 | * @return javax.swing.JButton
|
||
614 | */
|
||
615 | private javax.swing.JButton getBtnNuevo() {
|
||
616 | if (btnNuevo == null) { |
||
617 | btnNuevo = new javax.swing.JButton();
|
||
618 | 438 | fernando | btnNuevo.setPreferredSize(new java.awt.Dimension(80, 23)); |
619 | 312 | fernando | btnNuevo.setName("btnNuevo");
|
620 | btnNuevo.setText(Utilities.getMessage(this, "nuevo")); |
||
621 | 438 | fernando | btnNuevo.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
622 | 312 | fernando | btnNuevo.addActionListener(new java.awt.event.ActionListener() {
|
623 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
624 | try {
|
||
625 | 438 | fernando | nuevo(); |
626 | } catch (Exception e1) { |
||
627 | App.instance.getNm().addError(e1.getLocalizedMessage(), |
||
628 | e1); |
||
629 | } |
||
630 | 312 | fernando | } |
631 | }); |
||
632 | } |
||
633 | |||
634 | return btnNuevo;
|
||
635 | } |
||
636 | |||
637 | /**
|
||
638 | * This method initializes btnPropiedades
|
||
639 | *
|
||
640 | * @return javax.swing.JButton
|
||
641 | */
|
||
642 | private javax.swing.JButton getBtnPropiedades() {
|
||
643 | if (btnPropiedades == null) { |
||
644 | btnPropiedades = new javax.swing.JButton();
|
||
645 | 438 | fernando | btnPropiedades.setPreferredSize(new java.awt.Dimension(80, 23)); |
646 | 312 | fernando | btnPropiedades.setText(Utilities.getMessage(this, "propiedades")); |
647 | btnPropiedades.setName("btnPropiedades");
|
||
648 | btnPropiedades.setEnabled(false);
|
||
649 | 438 | fernando | btnPropiedades.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
650 | 312 | fernando | btnPropiedades.addActionListener(new java.awt.event.ActionListener() {
|
651 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
652 | propiedades(); |
||
653 | } |
||
654 | }); |
||
655 | } |
||
656 | |||
657 | return btnPropiedades;
|
||
658 | } |
||
659 | |||
660 | /**
|
||
661 | * This method initializes btnAbrir
|
||
662 | *
|
||
663 | * @return javax.swing.JButton
|
||
664 | */
|
||
665 | private javax.swing.JButton getBtnAbrir() {
|
||
666 | if (btnAbrir == null) { |
||
667 | btnAbrir = new javax.swing.JButton();
|
||
668 | 438 | fernando | btnAbrir.setPreferredSize(new java.awt.Dimension(80, 23)); |
669 | 312 | fernando | btnAbrir.setName("btnAbrir");
|
670 | btnAbrir.setText(Utilities.getMessage(this, "abrir")); |
||
671 | btnAbrir.setEnabled(false);
|
||
672 | 438 | fernando | btnAbrir.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
673 | 312 | fernando | btnAbrir.addActionListener(new java.awt.event.ActionListener() {
|
674 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
675 | abrir(); |
||
676 | } |
||
677 | }); |
||
678 | } |
||
679 | |||
680 | return btnAbrir;
|
||
681 | } |
||
682 | |||
683 | /**
|
||
684 | * This method initializes btnBorrar
|
||
685 | *
|
||
686 | * @return javax.swing.JButton
|
||
687 | */
|
||
688 | private javax.swing.JButton getBtnBorrar() {
|
||
689 | if (btnBorrar == null) { |
||
690 | btnBorrar = new javax.swing.JButton();
|
||
691 | 438 | fernando | btnBorrar.setPreferredSize(new java.awt.Dimension(80, 23)); |
692 | 312 | fernando | btnBorrar.setText(Utilities.getMessage(this, "borrar")); |
693 | btnBorrar.setName("btnBorrar");
|
||
694 | btnBorrar.setEnabled(false);
|
||
695 | 438 | fernando | btnBorrar.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
696 | 312 | fernando | btnBorrar.addActionListener(new java.awt.event.ActionListener() {
|
697 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
698 | borrar(); |
||
699 | } |
||
700 | }); |
||
701 | } |
||
702 | |||
703 | return btnBorrar;
|
||
704 | } |
||
705 | |||
706 | /**
|
||
707 | * This method initializes btnRenombrar
|
||
708 | *
|
||
709 | * @return javax.swing.JButton
|
||
710 | */
|
||
711 | private javax.swing.JButton getBtnRenombrar() {
|
||
712 | if (btnRenombrar == null) { |
||
713 | btnRenombrar = new javax.swing.JButton();
|
||
714 | 438 | fernando | btnRenombrar.setPreferredSize(new java.awt.Dimension(80, 23)); |
715 | 312 | fernando | btnRenombrar.setName("btnRenombrar");
|
716 | btnRenombrar.setText(Utilities.getMessage(this, "renombrar")); |
||
717 | btnRenombrar.setEnabled(false);
|
||
718 | 438 | fernando | btnRenombrar.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
719 | 312 | fernando | btnRenombrar.addActionListener(new java.awt.event.ActionListener() {
|
720 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
721 | renombrar(); |
||
722 | } |
||
723 | }); |
||
724 | } |
||
725 | |||
726 | return btnRenombrar;
|
||
727 | } |
||
728 | |||
729 | /**
|
||
730 | * This method initializes jPanel3
|
||
731 | *
|
||
732 | * @return javax.swing.JPanel
|
||
733 | */
|
||
734 | private javax.swing.JPanel getJPanel3() {
|
||
735 | if (jPanel3 == null) { |
||
736 | jPanel3 = new javax.swing.JPanel();
|
||
737 | |||
738 | java.awt.FlowLayout layFlowLayout3 = new java.awt.FlowLayout();
|
||
739 | layFlowLayout3.setHgap(5);
|
||
740 | layFlowLayout3.setAlignment(java.awt.FlowLayout.LEFT); |
||
741 | jPanel3.setLayout(layFlowLayout3); |
||
742 | jPanel3.add(getJLabel(), null);
|
||
743 | jPanel3.add(getLblNombreSesion(), null);
|
||
744 | jPanel3.add(getJLabel1(), null);
|
||
745 | jPanel3.add(getLblGuardado(), null);
|
||
746 | jPanel3.add(getJLabel2(), null);
|
||
747 | jPanel3.add(getLblFecha(), null);
|
||
748 | jPanel3.add(getJPanel4(), null);
|
||
749 | 438 | fernando | jPanel3.setPreferredSize(new java.awt.Dimension(390, 125)); |
750 | 312 | fernando | jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder( |
751 | null, Utilities.getMessage(this, "propiedades_sesion"), |
||
752 | javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, |
||
753 | javax.swing.border.TitledBorder.DEFAULT_POSITION, null, null)); |
||
754 | } |
||
755 | |||
756 | return jPanel3;
|
||
757 | } |
||
758 | |||
759 | /**
|
||
760 | * This method initializes jLabel
|
||
761 | *
|
||
762 | * @return javax.swing.JLabel
|
||
763 | */
|
||
764 | private javax.swing.JLabel getJLabel() {
|
||
765 | if (jLabel == null) { |
||
766 | jLabel = new javax.swing.JLabel();
|
||
767 | jLabel.setText(Utilities.getMessage(this, "nombre_sesion") + ":"); |
||
768 | jLabel.setPreferredSize(new java.awt.Dimension(150, 16)); |
||
769 | } |
||
770 | |||
771 | return jLabel;
|
||
772 | } |
||
773 | |||
774 | /**
|
||
775 | * This method initializes lblNombreSesion
|
||
776 | *
|
||
777 | * @return javax.swing.JLabel
|
||
778 | */
|
||
779 | private javax.swing.JLabel getLblNombreSesion() {
|
||
780 | if (lblNombreSesion == null) { |
||
781 | lblNombreSesion = new javax.swing.JLabel();
|
||
782 | lblNombreSesion.setText("");
|
||
783 | lblNombreSesion.setName("lblNombreSesion");
|
||
784 | 438 | fernando | lblNombreSesion.setPreferredSize(new java.awt.Dimension(200, 16)); |
785 | 312 | fernando | lblNombreSesion.setAutoscrolls(true);
|
786 | } |
||
787 | |||
788 | return lblNombreSesion;
|
||
789 | } |
||
790 | |||
791 | /**
|
||
792 | * This method initializes jLabel1
|
||
793 | *
|
||
794 | * @return javax.swing.JLabel
|
||
795 | */
|
||
796 | private javax.swing.JLabel getJLabel1() {
|
||
797 | if (jLabel1 == null) { |
||
798 | jLabel1 = new javax.swing.JLabel();
|
||
799 | jLabel1.setText(Utilities.getMessage(this, "guardado") + ":"); |
||
800 | jLabel1.setPreferredSize(new java.awt.Dimension(150, 16)); |
||
801 | } |
||
802 | |||
803 | return jLabel1;
|
||
804 | } |
||
805 | |||
806 | /**
|
||
807 | * This method initializes lblGuardado
|
||
808 | *
|
||
809 | * @return javax.swing.JLabel
|
||
810 | */
|
||
811 | private javax.swing.JLabel getLblGuardado() {
|
||
812 | if (lblGuardado == null) { |
||
813 | lblGuardado = new javax.swing.JLabel();
|
||
814 | lblGuardado.setText("");
|
||
815 | 438 | fernando | lblGuardado.setPreferredSize(new java.awt.Dimension(200, 16)); |
816 | 312 | fernando | lblGuardado.setAutoscrolls(true);
|
817 | } |
||
818 | |||
819 | return lblGuardado;
|
||
820 | } |
||
821 | |||
822 | /**
|
||
823 | * This method initializes jLabel2
|
||
824 | *
|
||
825 | * @return javax.swing.JLabel
|
||
826 | */
|
||
827 | private javax.swing.JLabel getJLabel2() {
|
||
828 | if (jLabel2 == null) { |
||
829 | jLabel2 = new javax.swing.JLabel();
|
||
830 | jLabel2.setText(Utilities.getMessage(this, "creation_date") + ":"); |
||
831 | jLabel2.setPreferredSize(new java.awt.Dimension(150, 16)); |
||
832 | } |
||
833 | |||
834 | return jLabel2;
|
||
835 | } |
||
836 | |||
837 | /**
|
||
838 | * This method initializes lblFecha
|
||
839 | *
|
||
840 | * @return javax.swing.JLabel
|
||
841 | */
|
||
842 | private javax.swing.JLabel getLblFecha() {
|
||
843 | if (lblFecha == null) { |
||
844 | lblFecha = new javax.swing.JLabel();
|
||
845 | lblFecha.setText("");
|
||
846 | 438 | fernando | lblFecha.setPreferredSize(new java.awt.Dimension(200, 16)); |
847 | 312 | fernando | lblFecha.setAutoscrolls(true);
|
848 | } |
||
849 | |||
850 | return lblFecha;
|
||
851 | } |
||
852 | |||
853 | /**
|
||
854 | * This method initializes btnImportar
|
||
855 | *
|
||
856 | * @return javax.swing.JButton
|
||
857 | */
|
||
858 | private javax.swing.JButton getBtnImportar() {
|
||
859 | if (btnImportar == null) { |
||
860 | btnImportar = new javax.swing.JButton();
|
||
861 | 438 | fernando | btnImportar.setPreferredSize(new java.awt.Dimension(80, 23)); |
862 | 312 | fernando | btnImportar.setText(Utilities.getMessage(this, "importar")); |
863 | 438 | fernando | btnImportar.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
864 | 312 | fernando | } |
865 | |||
866 | return btnImportar;
|
||
867 | } |
||
868 | |||
869 | /**
|
||
870 | * This method initializes btnExportar
|
||
871 | *
|
||
872 | * @return javax.swing.JButton
|
||
873 | */
|
||
874 | private javax.swing.JButton getBtnExportar() {
|
||
875 | if (btnExportar == null) { |
||
876 | btnExportar = new javax.swing.JButton();
|
||
877 | 438 | fernando | btnExportar.setPreferredSize(new java.awt.Dimension(80, 23)); |
878 | 312 | fernando | btnExportar.setText(Utilities.getMessage(this, "exportar")); |
879 | 438 | fernando | btnExportar.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
880 | 312 | fernando | } |
881 | |||
882 | return btnExportar;
|
||
883 | } |
||
884 | |||
885 | /**
|
||
886 | * This method initializes btnEditar
|
||
887 | *
|
||
888 | * @return javax.swing.JButton
|
||
889 | */
|
||
890 | private javax.swing.JButton getBtnEditar() {
|
||
891 | if (btnEditar == null) { |
||
892 | btnEditar = new javax.swing.JButton();
|
||
893 | 438 | fernando | btnEditar.setPreferredSize(new java.awt.Dimension(80, 23)); |
894 | 312 | fernando | btnEditar.setText(Utilities.getMessage(this, "propiedades")); |
895 | |||
896 | 438 | fernando | btnEditar.setMargin(new java.awt.Insets(2, 2, 2, 2)); |
897 | |||
898 | 312 | fernando | final JPanel f = this; |
899 | btnEditar.addActionListener(new java.awt.event.ActionListener() {
|
||
900 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
901 | ProjectProperties dlg = new ProjectProperties(p);
|
||
902 | App.instance.getMDIContext().addView(dlg); |
||
903 | refreshProperties(); |
||
904 | } |
||
905 | }); |
||
906 | } |
||
907 | |||
908 | return btnEditar;
|
||
909 | } |
||
910 | |||
911 | /**
|
||
912 | * This method initializes jScrollPane
|
||
913 | *
|
||
914 | * @return javax.swing.JScrollPane
|
||
915 | */
|
||
916 | private javax.swing.JScrollPane getJScrollPane() {
|
||
917 | if (jScrollPane == null) { |
||
918 | jScrollPane = new javax.swing.JScrollPane();
|
||
919 | jScrollPane.setViewportView(getLstDocs()); |
||
920 | 438 | fernando | jScrollPane.setPreferredSize(new java.awt.Dimension(200, 100)); |
921 | 312 | fernando | jScrollPane.setVerticalScrollBarPolicy(javax.swing.JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); |
922 | } |
||
923 | |||
924 | return jScrollPane;
|
||
925 | } |
||
926 | |||
927 | 438 | fernando | /**
|
928 | * @see com.iver.mdiApp.ui.MDIManager.SingletonView#getViewModel()
|
||
929 | */
|
||
930 | public Object getViewModel() { |
||
931 | return p;
|
||
932 | } |
||
933 | 312 | fernando | |
934 | 438 | fernando | /**
|
935 | * @see com.iver.mdiApp.ui.MDIManager.View#getViewInfo()
|
||
936 | */
|
||
937 | public ViewInfo getViewInfo() {
|
||
938 | if (m_viewinfo == null) { |
||
939 | m_viewinfo = new ViewInfo();
|
||
940 | m_viewinfo.setFeatures(ViewInfo.ALWAYSLIVE); |
||
941 | m_viewinfo.setWidth(400);
|
||
942 | m_viewinfo.setHeight(430);
|
||
943 | m_viewinfo.setTitle(Utilities.getMessage(this, "titulo")); |
||
944 | } |
||
945 | 312 | fernando | |
946 | 438 | fernando | return m_viewinfo;
|
947 | } |
||
948 | 312 | fernando | |
949 | 438 | fernando | /**
|
950 | * @see java.beans.PropertyChangeListener#propertyChange(java.beans.PropertyChangeEvent)
|
||
951 | */
|
||
952 | public void propertyChange(PropertyChangeEvent evt) { |
||
953 | refreshControls(); |
||
954 | } |
||
955 | |||
956 | /**
|
||
957 | * @see com.iver.mdiApp.ui.MDIManager.View#viewActivated()
|
||
958 | */
|
||
959 | public void viewActivated() { |
||
960 | } |
||
961 | |||
962 | /**
|
||
963 | * This method initializes jPanel4
|
||
964 | *
|
||
965 | * @return javax.swing.JPanel
|
||
966 | */
|
||
967 | private javax.swing.JPanel getJPanel4() {
|
||
968 | if (jPanel4 == null) { |
||
969 | jPanel4 = new javax.swing.JPanel();
|
||
970 | |||
971 | java.awt.FlowLayout layFlowLayout2 = new java.awt.FlowLayout();
|
||
972 | layFlowLayout2.setHgap(30);
|
||
973 | jPanel4.setLayout(layFlowLayout2); |
||
974 | jPanel4.add(getBtnImportar(), null);
|
||
975 | jPanel4.add(getBtnExportar(), null);
|
||
976 | jPanel4.add(getBtnEditar(), null);
|
||
977 | jPanel4.setPreferredSize(new java.awt.Dimension(360, 30)); |
||
978 | } |
||
979 | |||
980 | return jPanel4;
|
||
981 | } |
||
982 | 312 | fernando | } |