[Echecs] Ajout choix du jeu

This commit is contained in:
Geoffrey Frogeye 2014-12-14 23:09:37 +01:00
parent e31d7aae8f
commit ab9637c4cb

View file

@ -1,5 +1,5 @@
from tkinter import *
from logique import LogiqueEchecs, LogiqueDames
from logique import *
class PlateauTk:
@ -442,20 +442,50 @@ class FenetreTk:
.grid(row=2, column=1, padx=3, pady=3)
Button(self.fen, text="Quitter", command=self.fen.destroy)\
.grid(row=2, column=3, padx=3, pady=3)
self.fen.bind("<Escape>", self.fen.destroy)
def statut(self, texte, delai=0):
def statut(self, texte):
"""
Change le message affiché.
"""
self.chaine.config(text=texte)
# TODO Messages permanents et messages temporaires
# (exemple permanent : "Aux blancs de jouer", exemple
# temporaire "Vous ne pouvez pas jouer ici !")
# (exemple permanent : "Aux blancs de jouer",
# exemple temporaire "Vous ne pouvez pas jouer ici !")
@staticmethod
def choixNvPartie():
dialogue = Toplevel()
dialogue.geometry('+400+400')
dialogue.grab_set()
dialogue.title('Choix du mode')
def fermer():
dialogue.destroy()
MODES = [('Échecs', 'Echecs'), ('Dames (International)', 'Dames'), \
('Dames (Anlaises)', 'DamesAnglaises')]
modeChoisi = StringVar()
modeChoisi.set(MODES[0][1])
for texte, mode in MODES:
Radiobutton(dialogue, text=texte, variable=modeChoisi, value=mode).pack(anchor=W)
Button(dialogue, text='Commencer !', command=fermer).pack(anchor=W)
dialogue.wait_window(dialogue)
return modeChoisi.get()
def nvPartie(self):
"""
Démarre une nouvelle partie.
"""
del self.plateau
self.plateau = PlateauTk(
self.fen, self.can, self.statut, LogiqueDames())
choix = self.choixNvPartie()
if choix == 'Echecs':
logique = LogiqueEchecs()
elif choix == 'Dames':
logique = LogiqueDames()
elif choix == 'DamesAnglaises':
logique = LogiqueDamesAnglaises()
self.plateau = PlateauTk(self.fen, self.can, self.statut, logique)