We also called the update_highlight_list(position) method from the on_square_clicked method. The purpose of this method is to collect all the possible moves for a given chess piece in a list named all_squares_to_be_highlighted.
The actual focusing of the available moves takes place in the draw_board method of the GUI class. The code for this is as follows (see 4.06—view.py):
def update_highlight_list(self, position): self.all_squares_to_be_highlighted = None try: piece = self.controller.get_piece_at(position) except: piece = None if piece and (piece.color == self.controller.player_turn()): self.selected_piece_position = position self.all_squares_to_be_highlighted = list(map(self.controller.get_numeric_notation, ...