# on importe tout le contenu du module tkinter
# pour raccourcir la syntaxe il sera simplement appelé tk dans la suiteimport tkinter as tk
import tkinter as tk

# Fenêtre principale
root = tk.Tk()
#appel de la méthode title de l’objet root pour définir le titre de la fenêtre
root.title("Mini casse-brique (3 murs)")

# Canvas de jeu (Zone de dessin graphique = constituée de pixels)
LARGEUR = 400 # définition d’une constante
HAUTEUR = 300 # définition d’une constante 
zone_de_jeu = tk.Canvas(root, width=LARGEUR, height=HAUTEUR, bg='black')
zone_de_jeu.pack() # méthode pack pour placer la zone de jeu dans root


# Création de la balle
BALL_RADIUS = 8
# positionner ball dans un rectangle englobant (x1,y1,x2,y2)
# x1=gauche=190 y1=haut=140 x2=droit=210 y2=bas=160 couleur = blanc
ball = zone_de_jeu.create_oval(200 - BALL_RADIUS//2, 150 - BALL_RADIUS//2, 200 + BALL_RADIUS//2 , 150 + BALL_RADIUS//2, fill='white')

# Vitesse initiale
dx, dy = 2, -2

def move_ball():
    # on récupère deux variables dx et dy du programme principal 
    global dx, dy

    # Déplacement d'un objet dans la zone de jeu
    zone_de_jeu.move(ball, dx, dy)

    # demander l'exécution de la fonction move_ball() dans 20ms
    root.after(40, move_ball)
# 
# # Lancer le mouvement
move_ball()
# boucle principale
root.mainloop()
