def _setGridSize(self, grid_size): n_columns, n_rows = grid_size self.removeAllChildren() for row_n in xrange(n_rows): row_size = (n_columns * self.cell_size[0], self.cell_size[1]) row = pychan.HBox(min_size=row_size, max_size=row_size, padding=self.padding) row.border_size = 1 row.opaque = 0 for column_n in xrange(n_columns): index = row_n * n_columns + column_n slot = Slot(min_size=(self.cell_size), max_size=(self.cell_size)) slot.border_size = 1 slot.name = "Slot_%d" % index slot.index = index slot.image = None slot.size = self.cell_size row.addChild(slot) self.addChild(row) self.min_size = ((n_columns * self.cell_size[0]) + 2, (n_rows * self.cell_size[1]) + 2) self.max_size = self.min_size