diff --git a/pyAmakIHM/classes/controleur.py b/pyAmakIHM/classes/controleur.py index 1ebec57d9ddfed223fc5a81b3584e8f8bf42113a..23910146921666f701648f4e907dfd8837a88774 100644 --- a/pyAmakIHM/classes/controleur.py +++ b/pyAmakIHM/classes/controleur.py @@ -18,13 +18,16 @@ class Controleur: def __init__( self, fenetre : 'Fenetre', - amas : 'Amas' + scheduler : 'SchedulerIHM' ) -> None : self.__th = None self.__fenetre = fenetre self.__fenetre.attach(self) - self.__amas = amas - self.__amas.attach(self) + + self.__scheduler = scheduler + self.__scheduler.attach(self) + self.__amas = scheduler.get_amas() + self.__is_run = False def get_fenetre(self) -> 'Fenetre': @@ -33,6 +36,9 @@ class Controleur: def get_amas(self) -> 'Amas': return self.__amas + def get_scheduler(self) -> 'SchedulerIHM': + return self.__scheduler + """ Draw a rectangle with x,y coords, height, width and color """ @@ -215,26 +221,26 @@ class Controleur: Set the execution speed of amas """ def updateScale(self, value : int) -> None: - self.__amas.set_sleep(int(value)) + self.__scheduler.set_sleep(int(value)) """ Start or Stop the execution depending on the current state """ def updateStartStop(self) -> None: - if(self.__is_run): + if self.__is_run: self.__is_run = False - self.__amas.take_token() + self.__scheduler.stop() else: self.__is_run = True - self.__amas.put_token() + self.__scheduler.start() - def updateCycle(self,env,amas) -> None: + def updateCycle(self) -> None: try: - self.updateWindow(env,amas) + self.updateWindow() except: return - def updateWindow(env,amas): + def updateWindow(self): pass def initialisation(self) -> None: @@ -245,9 +251,9 @@ class Controleur: """ def start(self) -> None: self.initialisation() - self.__th = Thread(target=self.__amas.start) + self.__th = Thread(target=self.__scheduler.run) self.__th.start() self.__fenetre.display() def updateClosing(self): - self.__amas.exit_program() + self.__scheduler.exit_program()