[gnome-games] sudoku: Update all hints on clear



commit 92237d68274d946a5eb93879044eef19f927d2f1
Author: Jim Ross <jimbo dimensia com>
Date:   Sat Mar 27 02:06:26 2010 -0400

    sudoku: Update all hints on clear

 gnome-sudoku/src/lib/gsudoku.py |    8 ++++++--
 gnome-sudoku/src/lib/main.py    |    4 ----
 2 files changed, 6 insertions(+), 6 deletions(-)
---
diff --git a/gnome-sudoku/src/lib/gsudoku.py b/gnome-sudoku/src/lib/gsudoku.py
index a622d6f..52497cd 100644
--- a/gnome-sudoku/src/lib/gsudoku.py
+++ b/gnome-sudoku/src/lib/gsudoku.py
@@ -352,8 +352,6 @@ class SudokuGameDisplay (SudokuNumberGrid, gobject.GObject):
             self.entry_validate(widget)
         if self.show_impossible_implications:
             self.mark_impossible_implications(widget.x, widget.y)
-        if self.always_show_hints:
-            self.update_all_hints()
 
     def update_all_hints (self):
         for x in range(self.group_size):
@@ -425,6 +423,9 @@ class SudokuGameDisplay (SudokuNumberGrid, gobject.GObject):
         self.highlight_conflicts(x, y)
         # Draw our entry
         self.__entries__[(x, y)].queue_draw()
+        # Update all hints if we need to
+        if self.always_show_hints and not self.doing_initial_setup:
+            self.update_all_hints()
 
     @simple_debug
     def remove (self, x, y, do_removal = False):
@@ -448,6 +449,9 @@ class SudokuGameDisplay (SudokuNumberGrid, gobject.GObject):
         if e.get_text():
             e.set_value(0)
         e.unset_color()
+        # Update all hints if we need to
+        if self.grid and self.always_show_hints and not self.doing_initial_setup:
+            self.update_all_hints()
 
     def remove_error_highlight (self):
         '''remove error highlight from [x, y] and also all errors caused by it
diff --git a/gnome-sudoku/src/lib/main.py b/gnome-sudoku/src/lib/main.py
index 740753b..882aa5b 100644
--- a/gnome-sudoku/src/lib/main.py
+++ b/gnome-sudoku/src/lib/main.py
@@ -604,14 +604,10 @@ class UI (gconf_wrapper.GConfWrapper):
 
     def do_auto_fill (self, *args):
         self.autofilled.append(self.gsd.auto_fill())
-        if self.gconf['always_show_hints']:
-            self.gsd.update_all_hints()
 
     def undo_auto_fill (self, *args):
         for entry in self.autofilled.pop():
             self.gsd.remove(entry[0], entry[1], do_removal = True)
-        if self.gconf['always_show_hints']:
-            self.gsd.update_all_hints()
 
     @simple_debug
     def auto_fill_current_square_cb (self, *args):



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]