def mouseReleaseEvent(self, mouseEvent): self.drawGrabbedPiece = False pos = self.getBoardPosition(mouseEvent.x(), mouseEvent.y()) if(pos and self.grabbedPiece != None): if(pos != self.moveSrc): uci = self._make_uci(self.moveSrc, pos) if(self._is_valid_and_promotes(uci)): promDialog = DialogPromotion(self.gs.current.board().turn == chess.WHITE) answer = promDialog.exec_() if(answer): uci += promDialog.final_piece.lower() self.executeMove(uci) elif(self._is_valid(uci)): self.executeMove(uci) else: self.resetMove() self.update()
def mousePressEvent(self, mouseEvent): pos = self.getBoardPosition(mouseEvent.x(), mouseEvent.y()) if(pos): i = pos.x j = pos.y if(self.grabbedPiece): #m = Point(i,j) uci = self._make_uci(self.moveSrc,pos) if(self._is_valid_and_promotes(uci)): promDialog = DialogPromotion(self.gs.current.board().turn == chess.WHITE) answer = promDialog.exec_() if(answer): uci += promDialog.final_piece.lower() self.executeMove(uci) elif(self._is_valid(uci)): self.executeMove(uci) else: self.resetMove() if(self.gs.current.board().piece_at(j*8+i) != None): self.touchPiece(i,j,mouseEvent.x(),mouseEvent.y()) else: if(self.gs.current.board().piece_at(j*8+i) != None): self.touchPiece(i,j,mouseEvent.x(),mouseEvent.y()) self.update()