/** Acción realizada al pulsar el botón desasociar de la aplicación */ private void jButtonDesasociarActionPerformed() { try { LayerOperations operaciones = new LayerOperations(); // desasocia el dominio de la columna int iDeleted = operaciones.desasociarColumna(auxColumn); if (iDeleted > 0) { JOptionPane optionPane = new JOptionPane( I18N.get("GestorCapas", "general.mensaje.fin.operacion"), JOptionPane.INFORMATION_MESSAGE); JDialog dialog = optionPane.createDialog(this, ""); dialog.show(); Identificadores.put("DomainsModificados", true); jButtonAsociar.setEnabled(true); jButtonDesasociar.setEnabled(false); } else { JOptionPane optionPane = new JOptionPane( I18N.get("GestorCapas", "general.mensaje.error.operacion"), JOptionPane.ERROR_MESSAGE); JDialog dialog = optionPane.createDialog(this, ""); dialog.show(); } ; repaint(); } catch (DataException de) { de.printStackTrace(); } }
/** Acción realizada al pulsar el botón de asociar de la aplicación */ private void jButtonAsociarActionPerformed() { try { // Convierte com.geopista.protocol.administrador.dominios.Domain // en com.geopista.features.Domain int idDomain = Integer.parseInt(auxDomain.getIdDomain()); String nombreDominio = auxDomain.getName(); LayerOperations operaciones = new LayerOperations(); Domain dominio = operaciones.obtenerDominioTipo(idDomain, nombreDominio); // asocia el dominio a la columna int iRes = operaciones.actualizarDominioColumna( auxColumn, dominio, Integer.parseInt(txtLevel.getText())); // auxColumn.setDomain(dominio); if (iRes > 0) { JOptionPane optionPane = new JOptionPane( I18N.get("GestorCapas", "general.mensaje.fin.operacion"), JOptionPane.INFORMATION_MESSAGE); JDialog dialog = optionPane.createDialog(this, ""); dialog.show(); Identificadores.put("DomainsModificados", true); jButtonDesasociar.setEnabled(true); } else { JOptionPane optionPane = new JOptionPane( I18N.get("GestorCapas", "general.mensaje.error.operacion"), JOptionPane.ERROR_MESSAGE); JDialog dialog = optionPane.createDialog(this, ""); dialog.show(); } repaint(); } catch (DataException de) { de.printStackTrace(); } }
/** * Escucha los posibles cambios producidos en la selección de elementos del árbol de tables y * columns de GeoPISTA */ public void valueChanged(TreeSelectionEvent e) { if (e == null || !(e.getSource() instanceof JTree)) return; JTree arbol = (JTree) e.getSource(); DefaultMutableTreeNode node = (DefaultMutableTreeNode) arbol.getLastSelectedPathComponent(); if (node == null) return; Object nodeInfo = node.getUserObject(); if (arbol.getName().indexOf("Particular") >= 0) { levelActivado = false; idMunicipio = Integer.parseInt(AppContext.getApplicationContext().getString("geopista.DefaultCityId")); if (nodeInfo instanceof com.geopista.protocol.administrador.dominios.Domain) { nodoParticular = true; } else { nodoParticular = false; } nodoGeneral = false; } else if (arbol.getName().indexOf("General") >= 0) { levelActivado = false; idMunicipio = 0; if (nodeInfo instanceof com.geopista.protocol.administrador.dominios.Domain) { nodoGeneral = true; } else { nodoGeneral = false; } nodoParticular = false; } else if (arbol.getName().indexOf("Tablas") >= 0) { // comprobar q es una columna lo seleccionado if (nodeInfo instanceof Column) { nodoTablas = true; } else { nodoTablas = false; } } if (nodeInfo instanceof Column) { jButtonDesasociar.setEnabled(true); auxColumn = (Column) nodeInfo; if (auxColumn.getDomain() == null) jButtonDesasociar.setEnabled(false); else jButtonDesasociar.setEnabled(true); if (nodoParticular || nodoGeneral) { // System.out.println ("tengo dominio y detecto columna"); jButtonAsociar.setEnabled(true); return; } } if (nodeInfo instanceof Table) { jButtonAsociar.setEnabled(false); jButtonDesasociar.setEnabled(false); } if (nodeInfo instanceof com.geopista.protocol.administrador.dominios.Domain) { levelActivado = false; auxDomain = (com.geopista.protocol.administrador.dominios.Domain) nodeInfo; if (nodoTablas) { // System.out.println ("tengo columna y detecto dominio"); jButtonAsociar.setEnabled(true); } LayerOperations operaciones = new LayerOperations(); try { if (operaciones.obtenerTipoDominio(auxDomain, idMunicipio) == Domain.TREE) levelActivado = true; } catch (DataException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } if (arbol.getName().indexOf("General") >= 0 && auxDomain.getListaNodes().getFirst() != null && auxDomain.getListaNodes().getFirst().getType() == Domain.TREE) { levelActivado = true; } else if (arbol.getName().indexOf("Particular") >= 0) { levelActivado = true; } } else { jButtonAsociar.setEnabled(false); } if (levelActivado) { // Se activa la caja de edicion de level txtLevel.setEnabled(true); lblLevel.setBackground(Color.BLACK); txtLevel.setText("0"); } else { txtLevel.setEnabled(false); txtLevel.setText("0"); lblLevel.setBackground(Color.GRAY); } }