/**
 * CLASSE PesqTabela
 * ------------------------------------
 * Sistema..: Locadora
 * Descrição: Resultado da Pesquisa
 * Direitos.: Java JDBC (c) Visual Books - 2001
 * Autor....: Fernando Anselmo
 * Versão...: 1.0
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class PesqTabela extends JDialog {
  // Objetos Utilizados
  private JList lsRegistro = new JList();
  private JScrollPane jScrollPane1 = new JScrollPane();
  private JButton btCancelar = new JButton("Cancelar");
  private JButton btOk = new JButton("OK");
  private JLabel JLabel1 = new JLabel("Selecione o desejado:");
  // Variáveis Ulizadas
  private String nmTabela;
  private String nmCampo;
  public String rsNome;  
  // Constructor do Objeto
  public PesqTabela(String tab, String cmp, String res) {
    try {
      nmTabela = tab;
      nmCampo  = cmp;
      rsNome   = res;
      mostra();
      rsNome   = "";
    } catch(Exception e) { }
  }
  // Montagem da Janela
  private void mostra() throws Exception {
    this.getContentPane().setLayout(null);
    this.setSize(335, 274);
    this.setTitle("Localizados");
    this.setResizable(false);
    this.setModal(true);
    // ***
    jScrollPane1.setBounds(new Rectangle(8, 25, 310, 180));
    jScrollPane1.getViewport().add(lsRegistro, null);
    this.getContentPane().add(jScrollPane1, null);
    btCancelar.setBounds(new Rectangle(219, 213, 100, 30));
    this.getContentPane().add(btCancelar, null);
    btCancelar.addActionListener (new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        acaoBtCancelar(e);
    }});
    btOk.setBounds(new Rectangle(112, 213, 100, 30));
    this.getContentPane().add(btOk, null);
    btOk.addActionListener (new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        acaoBtOk(e);
    }});
    JLabel1.setBounds(new Rectangle(6, 5, 130, 13));
    this.getContentPane().add(JLabel1, null);
    // Carrega a Lista
    Acesso ac = new Acesso();
    if (ac.conecta()) {
      ac.carrLista(lsRegistro, nmCampo, nmTabela + 
        " where (" + nmCampo + " like '%" + rsNome + "%')");
      ac.desconecta();
    }
  }
  // Ao pressionar o botão OK
  private void acaoBtOk(ActionEvent e) {
    if (lsRegistro.getSelectedIndex() > -1) {
      rsNome = "" + lsRegistro.getSelectedValue();
      dispose();
    }
  }
  // Ao pressionar o botão Cancelar
  private void acaoBtCancelar(ActionEvent e) {
    rsNome = "";
    dispose();
  }
}