Exemple #1
0
def run_app(origBoard):
    """ Main application function """
    print('Board is valid:', sd.BoardIsValid(origBoard))

    candBoard = sd.SolveCandidates(origBoard)

    app = QtWidgets.QApplication(sys.argv)
    mainWin = SudokuMainWindow(origBoard, candBoard)
    mainWin.show()

    return app.exec_()
Exemple #2
0
    def RegenerateCandidates(self):
        """ Reset the displayed candidates to those based on those that are 
        valid (ie avoid duplicates). Resets any candidate changes based on other
        patterns like hidden singles etc. """
        self.ClearHighlights()
        self.candBoard = sd.SolveCandidates(self.currBoard)

        for i in range(0, 9):
            for j in range(0, 9):
                candSet = self.candBoard[i][j]
                self.cells[i][j].UpdateCandidates(candSet)