diff options
Diffstat (limited to 'canvas.py')
-rw-r--r-- | canvas.py | 33 |
1 files changed, 30 insertions, 3 deletions
@@ -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 |