def posicionEditar(self): cp = Position.Position() cp.read_fen(self.fen) resp = Voyager.voyager_position(self, cp) if resp is not None: self.fen = resp self.muestraPosicion()
def posicionEditar(self): cp = Position.Position() cp.read_fen(self.fen) resp = Voyager.voyager_position(self, cp, wownerowner=self.procesador.main_window) if resp is not None: self.fen = resp.fen() self.muestraPosicion()
def change_position(self): prev = self.analyzing self.stop() resp = Voyager.voyager_position(self, self.position, wownerowner=self.procesador.main_window) if resp is not None: self.em_solucion.set_text("") self.position = resp self.board.set_position(self.position) self.sb_number.ponValor(self.sb_number.valor() + 1) if prev: self.start()
def nuevo(self): self.reset() position = Voyager.voyager_position(self, self.game.first_position) if position is not None: fen = position.fen() mt = self.t4.dtm(fen) if mt is None: QTUtil2.message_error(self, _("Invalid, this position is not evaluated by Gaviota Tablebases")) return if mt < 0: QTUtil2.message_error(self, _("Invalid, this position is lost")) return key, fenm2 = self.db.insert(fen, mt) self.set_key(key) pos = self.db.pos_fen(fenm2) self.grid.goto(pos, 0)
def startPosition(self): position = Voyager.voyager_position(self.main_window, self.game.first_position) if position is not None: if self.game.first_position == position: return self.game = Game.Game(ini_posicion=position, li_tags=self.game.li_tags) self.game.add_tag( "FEN", None if self.game.siFenInicial() else position.fen()) self.game.order_tags() self.xfichero = None self.xpgn = None self.xjugadaInicial = None self.bloqueApertura = None self.reiniciar()
def set_position(self): resp = Voyager.voyager_position(self, self.game.last_position) if resp is not None: game = Game.Game(ini_posicion=resp) self.orden_game(game)
def configurarGS(self): sep = (None, None, None) liMasOpciones = [ ("rotacion", _("Auto-rotate board"), Iconos.JS_Rotacion()), sep, ("leerpgn", _("Read PGN"), Iconos.PGN_Importar()), sep, ("pastepgn", _("Paste PGN"), Iconos.Pegar16()), sep, ] if not self.is_complete: liMasOpciones.extend([ ("position", _("Edit start position"), Iconos.Datos()), sep, ("pasteposicion", _("Paste FEN position"), Iconos.Pegar16()), sep, ("voyager", _("Voyager 2"), Iconos.Voyager()), ]) resp = self.configurar(liMasOpciones, siCambioTutor=True, siSonidos=True) if resp == "rotacion": self.auto_rotate = not self.auto_rotate is_white = self.game.last_position.is_white if self.auto_rotate: if is_white != self.board.is_white_bottom: self.board.rotaBoard() elif resp == "position": ini_position = self.game.first_position new_position = Voyager.voyager_position(self.main_window, ini_position) if new_position and new_position != ini_position: self.game.set_position(new_position) self.start(self.game, self.is_complete, self.only_consult, self.with_previous_next, self.save_routine) self.changed = True self.put_toolbar() elif resp == "pasteposicion": texto = QTUtil.traePortapapeles() if texto: new_position = Position.Position() try: new_position.read_fen(str(texto)) ini_position = self.game.first_position if new_position and new_position != ini_position: self.game.set_position(new_position) self.start(self.game, self.is_complete, self.only_consult, self.with_previous_next, self.save_routine) self.changed = True self.put_toolbar() except: pass elif resp == "leerpgn": game = self.procesador.select_1_pgn(self.main_window) self.replace_game(game) elif resp == "pastepgn": self.paste_pgn() elif resp == "voyager": game = Voyager.voyagerPartida(self.main_window, self.game) self.replace_game(game)
def configurarGS(self): sep = (None, None, None) liMasOpciones = [ ("rotacion", _("Auto-rotate board"), Iconos.JS_Rotacion()), sep, ("leerpgn", _("Read PGN"), Iconos.PGN_Importar()), sep, ("pastepgn", _("Paste PGN"), Iconos.Pegar16()), sep, ] if not self.siCompleta: liMasOpciones.extend([ ("position", _("Edit start position"), Iconos.Datos()), sep, ("pasteposicion", _("Paste FEN position"), Iconos.Pegar16()), sep, ("voyager", _("Voyager 2"), Iconos.Voyager1()), ]) resp = self.configurar(liMasOpciones, siCambioTutor=True, siSonidos=True) if resp == "rotacion": self.auto_rotate = not self.auto_rotate is_white = self.game.last_position.is_white if self.auto_rotate: if is_white != self.tablero.is_white_bottom: self.tablero.rotaTablero() elif resp == "position": ini_position = self.game.first_position new_position = Voyager.voyager_position(self.main_window, ini_position) if new_position and new_position != ini_position: self.game.set_position(new_position) self.inicio(self.game, self.siCompleta) elif resp == "pasteposicion": texto = QTUtil.traePortapapeles() if texto: cp = Position.Position() try: cp.read_fen(str(texto)) self.fen = cp.fen() self.posicApertura = None self.reiniciar() except: pass elif resp == "leerpgn": game = self.procesador.select_1_pgn(self.main_window) if game: if self.siCompleta and not game.siFenInicial(): return p = Game.Game() p.leeOtra(game) p.assign_opening() self.reinicio = p.save() self.reiniciar() elif resp == "pastepgn": texto = QTUtil.traePortapapeles() if texto: ok, game = Game.pgn_game(texto) if not ok: QTUtil2.message_error( self.main_window, _("The text from the clipboard does not contain a chess game in PGN format" )) return if self.siCompleta and not game.siFenInicial(): return self.reinicio = game.save() self.reiniciar() elif resp == "voyager": ptxt = Voyager.voyagerPartida(self.main_window, self.game) if ptxt: dic = self.creaDic() dic["GAME"] = ptxt.save() dic["FEN"] = None if ptxt.siFenInicial( ) else ptxt.first_position.fen() dic["WHITEBOTTOM"] = self.tablero.is_white_bottom self.reiniciar(dic)
def set_position(self): cp = Position.Position() cp.read_fen(self.fen) resp = Voyager.voyager_position(self, cp) if resp is not None: self.ponFen(resp.fen())
def voyager(self): position = Voyager.voyager_position(self, self.position, wownerowner=self.owner) if position: self.set_position(position, True)
def utilities_gs(self): sep = (None, None, None) li_mas_opciones = [ (None, _("Change the initial position"), Iconos.PGN()), sep, ("leerpgn", _("Read PGN file"), Iconos.PGN_Importar()), sep, ("pastepgn", _("Paste PGN"), Iconos.Pegar16()), sep, ] if not self.is_complete: li_mas_opciones.extend([ ("position", _("Edit start position"), Iconos.Datos()), sep, ("pasteposicion", _("Paste FEN position"), Iconos.Pegar16()), sep, ("voyager", _("Voyager 2"), Iconos.Voyager()), ]) li_mas_opciones.extend([(None, None, True), sep, ("books", _("Consult a book"), Iconos.Libros()) ]) resp = self.utilidades(li_mas_opciones) if resp == "books": liMovs = self.librosConsulta(True) if liMovs: for x in range(len(liMovs) - 1, -1, -1): from_sq, to_sq, promotion = liMovs[x] self.player_has_moved(from_sq, to_sq, promotion) elif resp == "position": ini_position = self.game.first_position new_position = Voyager.voyager_position(self.main_window, ini_position) if new_position and new_position != ini_position: self.game.set_position(new_position) self.start(self.game, self.is_complete, self.only_consult, self.with_previous_next, self.save_routine) self.changed = True self.put_toolbar() elif resp == "pasteposicion": texto = QTUtil.traePortapapeles() if texto: new_position = Position.Position() try: new_position.read_fen(str(texto)) ini_position = self.game.first_position if new_position and new_position != ini_position: self.game.set_position(new_position) self.start(self.game, self.is_complete, self.only_consult, self.with_previous_next, self.save_routine) self.changed = True self.put_toolbar() except: pass elif resp == "leerpgn": game = self.procesador.select_1_pgn(self.main_window) self.replace_game(game) elif resp == "pastepgn": self.paste_pgn() elif resp == "voyager": game = Voyager.voyagerPartida(self.main_window, self.game) self.replace_game(game)