private void tablaUsuariosDelSistemaMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_tablaUsuariosDelSistemaMouseClicked
        // TODO add your handling code here:
        String opcionHabilitar = "Habilitar";
        String nombreUsuario = String.valueOf(tablaUsuariosDelSistema.getValueAt(tablaUsuariosDelSistema.getSelectedRow(), 0));
        String estado = String.valueOf(tablaUsuariosDelSistema.getValueAt(tablaUsuariosDelSistema.getSelectedRow(), 2));
        if (estado.equals("Habilitado")) {
            opcionHabilitar = "Deshabilitar";
        }
        Object[] opciones = {"Cancelar", "Editar", opcionHabilitar};
        final ControladorUsuarios controladorUsuarios = new ControladorUsuarios();
        final Usuarios usuarioSelecionado = controladorUsuarios.obtenerUsuario(nombreUsuario);
        if (nombreUsuario.equals("admin") || nombreUsuario.equals(JTextFieldnombreDeUsuario.getText())) {
            JOptionPane.showMessageDialog(this, "No se puede editarse a si mismo o el usuario administrador del sistema", "Mensaje del sistema", JOptionPane.WARNING_MESSAGE);
        } else {
            int opcionElegida = JOptionPane.showOptionDialog(this, "Por favor elija una opción", "Editar cliente", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE, null, opciones, null);
            switch (opcionElegida) {
                case 1:
                    final JDialog dialogoEditar = new JDialog(this);
                    dialogoEditar.setTitle("Editar usuario");
                    dialogoEditar.setSize(400, 310);
                    dialogoEditar.setResizable(false);
                    JPanel panelDialogo = new JPanel();
                    panelDialogo.setLayout(new GridBagLayout());
                    GridBagConstraints c = new GridBagConstraints();
                    c.fill = GridBagConstraints.HORIZONTAL;
                    JLabel editarTextoPrincipalDialogo = new JLabel("Editar clientes");
                    c.gridx = 0;
                    c.gridy = 0;
                    c.gridwidth = 2;
                    c.insets = new Insets(15, 10, 40, 0);
                    c.ipadx = 0;
                    Font textoGrande = new Font("Arial", 1, 18);
                    editarTextoPrincipalDialogo.setFont(textoGrande);
                    panelDialogo.add(editarTextoPrincipalDialogo, c);
                    c.insets = new Insets(0, 5, 10, 0);
                    c.gridx = 0;
                    c.gridy = 1;
                    c.gridwidth = 1;
                    c.ipadx = 0;
                    JLabel editarNombreClienteDialogo = new JLabel("Login:");
                    panelDialogo.add(editarNombreClienteDialogo, c);
                    final JTextField valorEditarNombreClienteDialogo = new JTextField();
                    c.gridx = 1;
                    c.gridy = 1;
                    c.gridwidth = 1;
                    c.ipadx = 0;
                    c.insets = new Insets(0, 5, 10, 0);
                    valorEditarNombreClienteDialogo.setText(usuarioSelecionado.getLogin());
                    panelDialogo.add(valorEditarNombreClienteDialogo, c);
                    c.gridx = 0;
                    c.gridy = 2;
                    c.gridwidth = 1;
                    c.ipadx = 0;
                    c.insets = new Insets(0, 5, 10, 0);
                    JLabel editarPasswordClienteDialogo = new JLabel("Contraseña:");
                    panelDialogo.add(editarPasswordClienteDialogo, c);
                    final JTextField valoreditarPasswordClienteDialogo = new JTextField();
                    c.gridx = 1;
                    c.gridy = 2;
                    c.gridwidth = 1;
                    c.ipadx = 0;
                    c.insets = new Insets(0, 5, 10, 0);
                    panelDialogo.add(valoreditarPasswordClienteDialogo, c);
                    c.gridx = 0;
                    c.gridy = 3;
                    c.gridwidth = 2;
                    c.ipadx = 0;
                    c.insets = new Insets(0, 5, 10, 0);
                    JLabel mensajeEditarPassword = new JLabel("Si no desea editar la contraseña deje este espacio en blanco:");
                    panelDialogo.add(mensajeEditarPassword, c);
                    c.gridx = 0;
                    c.gridy = 4;
                    c.gridwidth = 1;
                    c.ipadx = 0;
                    c.insets = new Insets(0, 15, 10, 15);
                    JButton botonGuardarClienteDialogo = new JButton("Guardar");
                    panelDialogo.add(botonGuardarClienteDialogo, c);
                    c.gridx = 1;
                    c.gridy = 4;
                    c.gridwidth = 1;
                    c.insets = new Insets(0, 15, 10, 15);
                    c.ipadx = 0;
                    JButton botonCerrarClienteDialogo = new JButton("Cancelar");
                    panelDialogo.add(botonCerrarClienteDialogo, c);
                    botonCerrarClienteDialogo.addActionListener(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent e) {
                            dialogoEditar.dispose();
                        }
                    });
                    botonGuardarClienteDialogo.addActionListener(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent e) {
                            String nombreUsuario = valorEditarNombreClienteDialogo.getText();
                            usuarioSelecionado.setLogin(nombreUsuario);
                            if (!valoreditarPasswordClienteDialogo.getText().equals("")) {
                                usuarioSelecionado.setPassword(valoreditarPasswordClienteDialogo.getText());
                            }
                            controladorUsuarios.modificarUsuario(usuarioSelecionado.getUser_id(), usuarioSelecionado.getLogin(), usuarioSelecionado.getPassword());
                            JOptionPane.showMessageDialog(dialogoEditar, "Se ha modificado el usuario con éxito", "Mensaje del sistema", JOptionPane.INFORMATION_MESSAGE);
                            generarTablaUsuarios();
                            dialogoEditar.dispose();
                        }
                    });
                    dialogoEditar.add(panelDialogo);
                    dialogoEditar.setVisible(true);
                    break;
                case 2:
                    if (estado.equals("Habilitado")) {
                        usuarioSelecionado.setStatus('i');
                    } else {
                        usuarioSelecionado.setStatus('e');
                    }
                    controladorUsuarios.modificarEstadoUsuario(usuarioSelecionado);
                    JOptionPane.showMessageDialog(this, "Se ha cambiado el estado del usuario", "Mensaje del sistema", JOptionPane.INFORMATION_MESSAGE);
                    generarTablaUsuarios();
                    break;
                default:
                    break;
            }
        }        // TODO add your handling code here:

    }