# -*- encoding:utf-8 -*-

# Tracer les 5 anneaux olympiques en un clic

from tkinter import *

# Fonctions nécessaires pour tracer un anneau:

def cercle(can, x, y, color='black'):
    """
    Trace un cercle de 50px de rayon centré au point (x,y)
    et de couleur <color> dans le canevas <can>
    """
    can.create_oval(x-50, y-50, x+50, y+50, width=2, outline = color)

class Olympique(Tk):

    def __init__(self):
        Tk.__init__(self)
        self.title("Anneaux olympiques")

        # création des widgets "esclaves" :
        self.can = Canvas(master=self, bg="ivory", height = 210, width = 340)
        self.can.pack(side = LEFT)

        # boutons pour créer les anneaux: 
        bou1 = Button(master=self, text="Anneaux", command=self.anneaux)
        bou1.pack(side=BOTTOM)

        # bouton pour quitter:
        bou2 = Button(master=self, text="Quitter", command=self.quit)
        bou2.pack(side =BOTTOM)

    # Méthode gestionnaire d'événements:

    def anneaux(self):
        "Trace les 5 anneaux olympiques"

        # coordonnées (x1, y1) des 5 anneaux de diamètre 100 pixels
        coor = [(70, 80), (170, 80), (270, 80), (120, 130), (220, 130)]

        # couleurs des anneaux
        coul = ['red', 'yellow', 'blue', 'green', 'black']

        # tracer les 5 anneaux olympiques
        i = 0
        while i < 5:
            cercle(self.can, coor[i][0], coor[i][1], coul[i])
            i += 1

###### Programme principal ######

fen = Olympique()

fen.mainloop()                      # démarrage du réceptionnaire d'événements

fen.destroy()                       # destruction (fermeture) de la fenêtre
