Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/canvas.py
diff options
context:
space:
mode:
Diffstat (limited to 'canvas.py')
-rw-r--r--canvas.py33
1 files changed, 30 insertions, 3 deletions
diff --git a/canvas.py b/canvas.py
index 34eb00e..ba58b28 100644
--- a/canvas.py
+++ b/canvas.py
@@ -20,13 +20,40 @@
import logging
logger = logging.getLogger('canvas')
-import gtk
+logger.debug('start canvas')
+import math
+from gi.repository import Gtk
+from number_box import SudokuNumberBox
+logger.debug('Import all')
-class Canvas(gtk.AspectFrame):
+class Canvas(Gtk.AspectFrame):
def __init__(self, toolbar_box, activity):
- gtk.AspectFrame.__init__(self)
+ Gtk.AspectFrame.__init__(self)
+ self.group_size = 9
+ self.set_shadow_type(Gtk.ShadowType.NONE)
self.activity = activity
+ self.table = Gtk.Table(rows = self.group_size, columns = self.group_size, homogeneous = True)
+ self.__entries__ = {}
+ for x in range(self.group_size):
+ for y in range(self.group_size):
+ e = SudokuNumberBox(upper = self.group_size)
+ e.x = x
+ e.y = y
+ self.table.attach(e, x, x+1, y, y+1,
+ )
+ self.__entries__[(x, y)] = e
+
+ self.eb = Gtk.EventBox()
+ self.eb.add(self.table)
+ self.add(self.eb)
+ self.table.set_row_spacings(1)
+ self.table.set_col_spacings(1)
+ box_side = int(math.sqrt(self.group_size))
+ for n in range(1, box_side):
+ self.table.set_row_spacing(box_side*n-1, 2)
+ self.table.set_col_spacing(box_side*n-1, 2)
+ self.table.set_border_width(2)
def write_file(self, path):
pass