Implemented the reveal/hide solution functionality
[getaclue.git] / player_mainwindow.py
index 89459ae..b384b54 100644 (file)
@@ -33,6 +33,30 @@ class MainWindow:
 
                self.gtk_main_quit ()
 
 
                self.gtk_main_quit ()
 
+       # callback for menu item hide solution activated event
+       def on_hidesolution_activate (self, menuitem):
+               if self.puzzle:
+                       # hide the solution
+                       self.puzzle.reveal_solution (False)
+                       puzgrid = self.ui.get_object ("puzzlegrid")
+                       # redraw the grid
+                       puzgrid.queue_draw ()
+
+       # callback for menu item reveal solution activated event
+       def on_revealsolution_activate (self, menuitem):
+               if self.puzzle:
+                       # confirm first
+                       dlg = gtk.MessageDialog (self.window, gtk.DIALOG_MODAL,
+                               gtk.MESSAGE_QUESTION, gtk.BUTTONS_YES_NO,
+                               "This will reveal all words in the puzzle! Are you sure?")
+                       if dlg.run () == gtk.RESPONSE_YES:
+                               # reveal the solution
+                               self.puzzle.reveal_solution ()
+                               # redraw the grid
+                               puzgrid = self.ui.get_object ("puzzlegrid")
+                               puzgrid.queue_draw ()
+                       dlg.destroy ()
+
        # callback for menu item reveal word activated event
        def on_revealword_activate (self, menuitem):
                if self.puzzle:
        # callback for menu item reveal word activated event
        def on_revealword_activate (self, menuitem):
                if self.puzzle: