コード例 #1
0
ファイル: chessboard_view.py プロジェクト: jasiegel4/jerry
 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()
コード例 #2
0
ファイル: chessboard_view.py プロジェクト: jasiegel4/jerry
 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()