fw.jogoCartas
Class Jogo3

java.lang.Object
  |
  +--fw.jogoCartas.Jogo3

public class Jogo3
extends java.lang.Object

Um objeto desta classe representa a interface gráfica do jogo Captive Queens.

Version:
1.0
Author:
Fabiana Paulino Guedes, fabianap@dsc.ufpb.br, Raquel Vigolvino Lopes, rakel@dsc.ufpb.br

Field Summary
private  javax.swing.JButton ajuda
          Botão que aciona a ajuda.
private static java.lang.Object[][] dadosEstoqueDescarte
           
private static java.lang.Object[][] dadosFundacoes
           
private  javax.swing.table.DefaultTableModel dtmEstoqueDescarte
          Objeto que auxilia na manipulação da tabelaEstoqueDescarte.
private  javax.swing.table.DefaultTableModel dtmFundacoes5
          Objeto que auxilia na manipulação da tabelaFundacoes5.
private  javax.swing.table.DefaultTableModel dtmFundacoes6
          Objeto que auxilia na manipulação da tabelaFundacoes6.
private  javax.swing.table.DefaultTableModel dtmFundacoesQ
          Objeto que auxilia na manipulação da tabelaFundacoesQ.
private  javax.swing.JFrame frame
          A janela principal do jogo.
private  Jogo jogo
          A lógica do jogo Captive Queens.
(package private)  java.util.HashMap mapeaNomeColunaFundacoes
           
private  javax.swing.JPanel menuDois
          Painel que contém os labels, os combo boxes e o botão ok.
private  javax.swing.JPanel menuUm
          Painel que abriga os botões novoJogo, selecionaJogo e ajuda.
private  javax.swing.JLabel moverDe
          Label "Mover de".
private  javax.swing.JLabel moverPara
          Label "para".
private static java.lang.String[] nomesColunasEstoqueDescarte
           
private static java.lang.String[] nomesColunasFundacoes5
           
private static java.lang.String[] nomesColunasFundacoes6
           
private static java.lang.String[] nomesColunasFundacoesQ
           
private static java.lang.String[] nomesPilhasDestino
           
private static java.lang.String[] nomesPilhasFonte
          atributos estáticos
private  javax.swing.JButton novoJogo
          Botão que dá início a um novo jogo.
private  javax.swing.JButton ok
          Botão que efetua as jogadas solicitadas.
private  javax.swing.JComboBox pilhaDestino
          Durante o jogo o jogador precisará mover cartas de uma pilha fonte para uma pilha destino.
private  javax.swing.JComboBox pilhaFonte
          Durante o jogo o jogador precisará mover cartas de uma pilha fonte para uma pilha destino.
private  javax.swing.JLabel pontuacao
          Label "Pontuação".
private  javax.swing.JButton selecionaJogo
          Botão que permite que um novo jogo seja selecionado.
private  javax.swing.JTable tabelaEstoqueDescarte
          A tabela que representa as pilhas: Estoque e Descarte.
private  javax.swing.JTable tabelaFundacoes5
          A tabela que representa as fundacoes 5, onde as cartas serão apresentadas.
private  javax.swing.JTable tabelaFundacoes6
          A tabela que representa as fundacoes 6, onde as cartas serão apresentadas.
private  javax.swing.JTable tabelaFundacoesQ
          A tabela que representa as fundacoes Q, onde as cartas serão apresentadas.
private  javax.swing.JScrollPane tabuleiroEstoqueDescarte
          O painel que contém a tabelaEstoqueDescarte.
private  javax.swing.JScrollPane tabuleiroFundacoes5
          O painel que contém a tabelaFundacoes5.
private  javax.swing.JScrollPane tabuleiroFundacoes6
          O painel que contém a tabelaFundacoes6.
private  javax.swing.JScrollPane tabuleiroFundacoesQ
          O painel que contém a tabelaFundacoesQ.
private  javax.swing.JLabel valorPontos
          Label que exibe o valor de pontos do jogo corrente.
 
Constructor Summary
Jogo3()
          Constrói uma nova interface para se jogar Captive Queens.
 
Method Summary
(package private)  void ()
           
private  void criaBotaoAjuda()
          Cria o botão ajuda e um ActionListener deste botão que efetuará as operações necessárias para que a ajuda seja exibida.
private  void criaBotaoNovoJogo()
          Cria o botão novoJogo e um ActionListener deste botão que efetuará as operações necessárias para que um novo jogo seja iniciado.
private  void criaBotaoOk()
          Cria o botão ok e um ActionListener deste botão que efetuará as operações necessárias para que a jogada solicitada pelo jogador seja efetuada.
private  void criaBotaoSelecionaJogo()
          Cria o botão selecionaJogo e um ActionListener deste botão que efetuará as operações necessárias para que um novo jogo seja selecionado e iniciado.
private  void criaFrame(java.lang.String titulo)
          Cria a janela principal.
private  void criaInterface()
          Constrói os componentes da interface.
private  void criaMenuDois()
          Constrói o menuDois e seus componentes.
private  void criaMenuUm()
          Constrói o menuUm e seus componentes.
private  void criaTabuleiroEstoqueDescarte()
          Cria o tabuleiroEstoqueDescarte e a tabelaEstoqueDescarte.
private  void criaTabuleiroFundacoes5()
          Cria o tabuleiroFundacoes5 e a tabelaFundacoes5.
private  void criaTabuleiroFundacoes6()
          Cria o tabuleiroFundacoes6 e a tabelaFundacoes6.
private  void criaTabuleiroFundacoesQ()
          Cria o tabuleiroFundacoesQ e a tabelaFundacoesQ.
private  void descarteParaEstoque()
          Realiza as seguintes tarefas:
-> Escreve na coluna do estoque o número de cartas que foram movidas para o mesmo.
-> Limpa a coluna de descarte.
private  void descarteParaFundacao5(java.lang.String destino)
          Realiza as seguintes tarefas:
-> Escreve o nome do novo topo do descarte na coluna correspondente ao descarte.
-> Escreve o nome do novo topo da Fundacao5 destino na coluna correspondente à mesma.
private  void descarteParaFundacao6(java.lang.String destino)
          Realiza as seguintes tarefas:
-> Escreve o nome do novo topo do descarte na coluna correspondente ao descarte.
-> Escreve o nome do novo topo da Fundacao6 destino na coluna correspondente à mesma.
private  void descarteParaFundacaoQ(java.lang.String destino)
          Realiza as seguintes tarefas:
-> Escreve o nome do novo topo do descarte na coluna correspondente ao descarte.
-> Escreve o nome do novo topo da FundacaoQ destino na coluna correspondente à mesma.
private  void estoqueParaDescarte()
          Realiza as seguintes tarefas:
-> Atualiza o número de cartas no estoque.
private  void inicializaInterface()
          Inicializa a interface para apresentar um novo jogo.
static void main(java.lang.String[] s)
          O programa principal.
private  void organizaFrame()
          Adiciona os painéis ao frame principal e o torna visível.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

frame

private javax.swing.JFrame frame
A janela principal do jogo.

pilhaFonte

private javax.swing.JComboBox pilhaFonte
Durante o jogo o jogador precisará mover cartas de uma pilha fonte para uma pilha destino. Este objeto permite que o jogador selecione a pilha fonte.

pilhaDestino

private javax.swing.JComboBox pilhaDestino
Durante o jogo o jogador precisará mover cartas de uma pilha fonte para uma pilha destino. Este objeto permite que o jogador selecione a pilha destino.

novoJogo

private javax.swing.JButton novoJogo
Botão que dá início a um novo jogo.

ajuda

private javax.swing.JButton ajuda
Botão que aciona a ajuda.

selecionaJogo

private javax.swing.JButton selecionaJogo
Botão que permite que um novo jogo seja selecionado.

ok

private javax.swing.JButton ok
Botão que efetua as jogadas solicitadas.

pontuacao

private javax.swing.JLabel pontuacao
Label "Pontuação".

valorPontos

private javax.swing.JLabel valorPontos
Label que exibe o valor de pontos do jogo corrente.

moverDe

private javax.swing.JLabel moverDe
Label "Mover de".

moverPara

private javax.swing.JLabel moverPara
Label "para".

menuUm

private javax.swing.JPanel menuUm
Painel que abriga os botões novoJogo, selecionaJogo e ajuda.

menuDois

private javax.swing.JPanel menuDois
Painel que contém os labels, os combo boxes e o botão ok.

tabuleiroEstoqueDescarte

private javax.swing.JScrollPane tabuleiroEstoqueDescarte
O painel que contém a tabelaEstoqueDescarte.

tabuleiroFundacoes5

private javax.swing.JScrollPane tabuleiroFundacoes5
O painel que contém a tabelaFundacoes5.

tabuleiroFundacoesQ

private javax.swing.JScrollPane tabuleiroFundacoesQ
O painel que contém a tabelaFundacoesQ.

tabuleiroFundacoes6

private javax.swing.JScrollPane tabuleiroFundacoes6
O painel que contém a tabelaFundacoes6.

tabelaEstoqueDescarte

private javax.swing.JTable tabelaEstoqueDescarte
A tabela que representa as pilhas: Estoque e Descarte.

tabelaFundacoes5

private javax.swing.JTable tabelaFundacoes5
A tabela que representa as fundacoes 5, onde as cartas serão apresentadas.

tabelaFundacoesQ

private javax.swing.JTable tabelaFundacoesQ
A tabela que representa as fundacoes Q, onde as cartas serão apresentadas.

tabelaFundacoes6

private javax.swing.JTable tabelaFundacoes6
A tabela que representa as fundacoes 6, onde as cartas serão apresentadas.

dtmEstoqueDescarte

private javax.swing.table.DefaultTableModel dtmEstoqueDescarte
Objeto que auxilia na manipulação da tabelaEstoqueDescarte.

dtmFundacoes5

private javax.swing.table.DefaultTableModel dtmFundacoes5
Objeto que auxilia na manipulação da tabelaFundacoes5.

dtmFundacoesQ

private javax.swing.table.DefaultTableModel dtmFundacoesQ
Objeto que auxilia na manipulação da tabelaFundacoesQ.

dtmFundacoes6

private javax.swing.table.DefaultTableModel dtmFundacoes6
Objeto que auxilia na manipulação da tabelaFundacoes6.

jogo

private Jogo jogo
A lógica do jogo Captive Queens.
See Also:
Jogo

nomesPilhasFonte

private static final java.lang.String[] nomesPilhasFonte
atributos estáticos

nomesPilhasDestino

private static final java.lang.String[] nomesPilhasDestino

dadosEstoqueDescarte

private static final java.lang.Object[][] dadosEstoqueDescarte

dadosFundacoes

private static final java.lang.Object[][] dadosFundacoes

nomesColunasEstoqueDescarte

private static final java.lang.String[] nomesColunasEstoqueDescarte

nomesColunasFundacoes5

private static final java.lang.String[] nomesColunasFundacoes5

nomesColunasFundacoesQ

private static final java.lang.String[] nomesColunasFundacoesQ

nomesColunasFundacoes6

private static final java.lang.String[] nomesColunasFundacoes6

mapeaNomeColunaFundacoes

final java.util.HashMap mapeaNomeColunaFundacoes
Constructor Detail

Jogo3

public Jogo3()
Constrói uma nova interface para se jogar Captive Queens.
Method Detail

void ()
Overrides:
in class java.lang.Object

criaInterface

private void criaInterface()
Constrói os componentes da interface.

criaFrame

private void criaFrame(java.lang.String titulo)
Cria a janela principal.

criaTabuleiroEstoqueDescarte

private void criaTabuleiroEstoqueDescarte()
Cria o tabuleiroEstoqueDescarte e a tabelaEstoqueDescarte.

criaTabuleiroFundacoes5

private void criaTabuleiroFundacoes5()
Cria o tabuleiroFundacoes5 e a tabelaFundacoes5.

criaTabuleiroFundacoesQ

private void criaTabuleiroFundacoesQ()
Cria o tabuleiroFundacoesQ e a tabelaFundacoesQ.

criaTabuleiroFundacoes6

private void criaTabuleiroFundacoes6()
Cria o tabuleiroFundacoes6 e a tabelaFundacoes6.

criaMenuUm

private void criaMenuUm()
Constrói o menuUm e seus componentes.

criaBotaoNovoJogo

private void criaBotaoNovoJogo()
Cria o botão novoJogo e um ActionListener deste botão que efetuará as operações necessárias para que um novo jogo seja iniciado.

criaBotaoSelecionaJogo

private void criaBotaoSelecionaJogo()
Cria o botão selecionaJogo e um ActionListener deste botão que efetuará as operações necessárias para que um novo jogo seja selecionado e iniciado.

inicializaInterface

private void inicializaInterface()
Inicializa a interface para apresentar um novo jogo.

criaBotaoAjuda

private void criaBotaoAjuda()
Cria o botão ajuda e um ActionListener deste botão que efetuará as operações necessárias para que a ajuda seja exibida.

criaMenuDois

private void criaMenuDois()
Constrói o menuDois e seus componentes.

criaBotaoOk

private void criaBotaoOk()
Cria o botão ok e um ActionListener deste botão que efetuará as operações necessárias para que a jogada solicitada pelo jogador seja efetuada. Se a jogada não for permitida, o usuário será notificado.

estoqueParaDescarte

private void estoqueParaDescarte()
Realiza as seguintes tarefas:
-> Atualiza o número de cartas no estoque. Se o estoque já foi reiniciado três vezes um X será impresso nele para indicar ao jogador que o estoque não pode mais ser iniciado.
-> Escreve o nome da carta na coluna de descarte.

descarteParaFundacao5

private void descarteParaFundacao5(java.lang.String destino)
Realiza as seguintes tarefas:
-> Escreve o nome do novo topo do descarte na coluna correspondente ao descarte.
-> Escreve o nome do novo topo da Fundacao5 destino na coluna correspondente à mesma.

descarteParaFundacaoQ

private void descarteParaFundacaoQ(java.lang.String destino)
Realiza as seguintes tarefas:
-> Escreve o nome do novo topo do descarte na coluna correspondente ao descarte.
-> Escreve o nome do novo topo da FundacaoQ destino na coluna correspondente à mesma.

descarteParaFundacao6

private void descarteParaFundacao6(java.lang.String destino)
Realiza as seguintes tarefas:
-> Escreve o nome do novo topo do descarte na coluna correspondente ao descarte.
-> Escreve o nome do novo topo da Fundacao6 destino na coluna correspondente à mesma.

descarteParaEstoque

private void descarteParaEstoque()
Realiza as seguintes tarefas:
-> Escreve na coluna do estoque o número de cartas que foram movidas para o mesmo.
-> Limpa a coluna de descarte.

organizaFrame

private void organizaFrame()
Adiciona os painéis ao frame principal e o torna visível.

main

public static void main(java.lang.String[] s)
O programa principal. Apenas cria um objeto da classe Jogo3.