diff options
Diffstat (limited to 'reviewpanel.py')
-rw-r--r-- | reviewpanel.py | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/reviewpanel.py b/reviewpanel.py index a65c855..4fa4649 100644 --- a/reviewpanel.py +++ b/reviewpanel.py @@ -41,12 +41,14 @@ _1_WEEK = _1_DAY * 7 _2_WEEKS = _1_WEEK * 2 _1_MONTH = _2_WEEKS * 2 +_REVIEWED = False + # # Review Panel for the Flashcard Activity # class ReviewPanel(gtk.VBox): - def __init__(self, box, catagory, expired_only): + def __init__(self, deckfile, box, catagory, expired_only): gtk.VBox.__init__(self) self.catagory = catagory @@ -85,6 +87,11 @@ class ReviewPanel(gtk.VBox): _checkbutton.set_icon_widget( self.make_label('next', ' ' + _('Check Answer!'))) + _nextcard = ToolButton(tooltip=_('Next Card')) + _nextcard.connect('clicked', self._next_card_cb) + _nextcard.set_icon_widget( + self.make_label('next', ' ' + _('Next Card'))) + self.view_box.pack_start(self.frontlabel) self.view_box.pack_start(self.viewcard) @@ -92,6 +99,7 @@ class ReviewPanel(gtk.VBox): self.entry_box.pack_start(self.answer_entry) self.button_box.pack_start(_checkbutton) + self.button_box.pack_start(_nextcard) self.answer_box.pack_start(self.answerlabel) self.answer_box.pack_start(self.correct) @@ -112,6 +120,7 @@ class ReviewPanel(gtk.VBox): self.correct.show() _checkbutton.show() + _nextcard.show() self.view_box.show() self.entry_box.show() @@ -120,9 +129,9 @@ class ReviewPanel(gtk.VBox): self.current_date = time.time() - self.testfile = "testfile.xml" + self.deckfile = deckfile - self.tree = xml.etree.ElementTree.parse(self.testfile) + self.tree = xml.etree.ElementTree.parse(self.deckfile) self.deck = self.get_selected_deck() @@ -130,6 +139,8 @@ class ReviewPanel(gtk.VBox): self.card = self.next_card() + self.card_reviewed = False + self.textbuffer.set_text(self.card.find("front").text) # Returns the box number of the selected box @@ -153,9 +164,16 @@ class ReviewPanel(gtk.VBox): # Check answer callback def _check_answer_cb(self, button): self.correcttextbuffer.set_text(self.check_answer()) - self.answer_entry.set_text("") - self.card = self.next_card() - self.textbuffer.set_text(self.card.find("front").text) + self.card_reviewed = True + + + def _next_card_cb(self, button): + if self.card_reviewed: + self.answer_entry.set_text("") + self.card = self.next_card() + self.textbuffer.set_text(self.card.find("front").text) + self.correcttextbuffer.set_text("") + self.card_reviewed = False # Checks the answer submitted, returns "Correct" or the back of the card @@ -290,7 +308,7 @@ class ReviewPanel(gtk.VBox): self.card.find("last_reviewed").text = str(time.time()) self.card.find("stage").text = str(stage) - self.tree.write(self.testfile) + self.tree.write(self.deckfile) # Gets the icon for the button and makes the label # Written by Simon Schampijer |