From a4b82a3c05866e2372a2c8632b7500d8a1507e4c Mon Sep 17 00:00:00 2001 From: jgimenez Date: Wed, 26 May 2010 12:50:20 +0000 Subject: The function to end the session has been implemented and to select all the topics of a given difficulty. --- diff --git a/controller.py b/controller.py index 86ee908..4b3cef4 100644 --- a/controller.py +++ b/controller.py @@ -10,10 +10,9 @@ class Controller(): self.session=session.Session(self.get_active_text(self.view.toolbar.categorias),self.get_active_text(self.view.toolbar.dificultades)) self.answered=True self.continues=True - self.continues=self.nextPuzzle(widget) + self.nextPuzzle(widget) def evaluateAnswer(self,widget): - print self.continues if self.continues: if not self.answered: self.answered=True @@ -37,16 +36,17 @@ class Controller(): self.continues=self.session.nextPuzzle() if self.continues: self.answered=False + self.view.refreshQuestion(self.session.currentPuzzle().question) self.view.hideAnswer() self.view.cleanUserAnswer() - self.view.refreshQuestion(self.session.currentPuzzle().question) - return self.continues def pause(self,widget): return self.session.pause() def end(self,widget): - return self.session.end() + self.session.end() + self.answered=True + self.nextPuzzle(widget) def get_active_text(self,combobox): model = combobox.get_model() diff --git a/puzzle.py b/puzzle.py index 2022f10..3c1f5b0 100644 --- a/puzzle.py +++ b/puzzle.py @@ -34,9 +34,6 @@ class Puzzle: print "Error" print sys.exc_info()[0] - def __str__(self): - return self.question - def evaluateAnswer(self,answer): return self.answer.lower()==answer.lower() diff --git a/session.py b/session.py index 47b105c..e06a811 100644 --- a/session.py +++ b/session.py @@ -10,11 +10,17 @@ class Session: self.topic = topic self.difficulty = difficulty #obtener puzzles - list_files = os.listdir('./puzzles/' + str(self.difficulty) + '/' + self.topic) - print list_files self.list_puzzles = [] - for item in list_files: - self.list_puzzles.append(Puzzle('./puzzles/' + str(self.difficulty) + '/' + self.topic + '/' + item)) + if self.topic=='Todas': + list_topics=os.listdir('./puzzles/' + str(self.difficulty)) + for topic_tmp in list_topics: + list_files = os.listdir('./puzzles/' + str(self.difficulty) + '/' + topic_tmp) + for item in list_files: + self.list_puzzles.append(Puzzle('./puzzles/' + str(self.difficulty) + '/' + topic_tmp + '/' + item)) + else: + list_files = os.listdir('./puzzles/' + str(self.difficulty) + '/' + self.topic) + for item in list_files: + self.list_puzzles.append(Puzzle('./puzzles/' + str(self.difficulty) + '/' + self.topic + '/' + item)) self.time = datetime.datetime.now() self.old_puzzles = [] self.score=0 @@ -38,6 +44,9 @@ class Session: if test: self.score+=self.currentPuzzle().getScore() return test + + def end(self): + self.list_puzzles=[] def __str__(self): return 'SesiĆ³n de topico = ' + str(self.topic) + ' y dificultad = ' + str(self.difficulty) diff --git a/toolbar.py b/toolbar.py index 5d4aab5..35e6ddc 100644 --- a/toolbar.py +++ b/toolbar.py @@ -35,6 +35,7 @@ class Toolbar(): self.iniciarB.connect("clicked", view.controller.newGame) self.iniciarB.show() self.finalizarB = gtk.Button("Terminar") + self.finalizarB.connect("clicked", view.controller.end) self.finalizarB.show() self.menu.pack_start(self.alineacion) self.menu.pack_start(self.categoriaL) -- cgit v0.9.1