[gnome-games/applygsoc2009: 58/76] XXX: Have bi-directional communication
- From: Pablo Castellano <pablog src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-games/applygsoc2009: 58/76] XXX: Have bi-directional communication
- Date: Mon, 6 Sep 2010 02:52:05 +0000 (UTC)
commit a8040ef981e956473255cc437d1f8917382b8635
Author: Pablo Castellano <pablog src gnome org>
Date: Wed Sep 1 04:52:48 2010 +0200
XXX: Have bi-directional communication
gnome-sudoku/src/lib/model.py | 4 +++-
gnome-sudoku/src/lib/sudoku.py | 2 +-
gnome-sudoku/src/lib/view.py | 5 ++++-
3 files changed, 8 insertions(+), 3 deletions(-)
---
diff --git a/gnome-sudoku/src/lib/model.py b/gnome-sudoku/src/lib/model.py
index 3573f88..ecd27d6 100644
--- a/gnome-sudoku/src/lib/model.py
+++ b/gnome-sudoku/src/lib/model.py
@@ -202,7 +202,9 @@ class SudokuModel:
def _setup_virgin_grid(self, virgin):
"""both grid and initial_grid should be str"""
- self._virgin_grid = [int(c) for c in virgin.split()]
+ virgin = virgin.replace(" ", "")
+ assert len(virgin) == self.group_size ** 2
+ self._virgin_grid = [int(c) for c in virgin]
self.grid = sudoku.InteractiveSudoku(virgin, self.group_size)
def _setup_initial_grid(self, initial_grid):
diff --git a/gnome-sudoku/src/lib/sudoku.py b/gnome-sudoku/src/lib/sudoku.py
index ba57831..18cf0c2 100644
--- a/gnome-sudoku/src/lib/sudoku.py
+++ b/gnome-sudoku/src/lib/sudoku.py
@@ -179,7 +179,7 @@ class SudokuGrid(object):
self.col_coords = _calc_col_coords(group_size)
if grid:
if type(grid) == str:
- g = re.split("\s+", grid)
+ g = grid.replace(" ", "")
side = int(math.sqrt(len(g)))
grid = []
for row in range(side):
diff --git a/gnome-sudoku/src/lib/view.py b/gnome-sudoku/src/lib/view.py
index 044a2ec..9a9057c 100644
--- a/gnome-sudoku/src/lib/view.py
+++ b/gnome-sudoku/src/lib/view.py
@@ -166,6 +166,9 @@ class SudokuNumberGrid (gtk.AspectFrame):
def get_focus(self):
return self.table.get_focus_child()
+ def set_value(self, x, y, value):
+ self.__entries__[(x, y)].set_value(value)
+
class SudokuView (SudokuNumberGrid, gobject.GObject):
@@ -237,7 +240,7 @@ class SudokuView (SudokuNumberGrid, gobject.GObject):
tid = self._tracker.get_tracker_by_coord(x, y)
if tid is not None:
self._tracker.remove_from_tracker(tid, x, y)
- self.__entries__[(x, y)].set_value(value)
+ SudokuNumberGrid.set_value(self, x, y, value)
def _refresh_color(self, x, y, conflict, is_new_value):
"""Set the color according to several rules, conflict/tracker, etc
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]