def editar(self, numero, siEngineActivo=False): import Code.Variantes as Variantes gestor = self.owner.wParent.gestor siCompetitivo = False if hasattr(gestor, "siCompetitivo"): if gestor.siCompetitivo: siCompetitivo = gestor.estado != kFinJuego if siCompetitivo: siEngineActivo = False fen = self.jg.posicionBase.fen() if numero == -1: pgn = "" else: pgn = self.liVariantes[numero].pgnBaseRAW() resp = Variantes.editaVariante(gestor.procesador, gestor, fen, pgn, siEngineActivo=siEngineActivo, siCompetitivo=siCompetitivo) if resp: lineaPGN, pv = resp fen = self.jg.posicionBase.fen() uno = PGN.UnPGN() uno.leeTexto('[FEN "%s"]\n%s' % (fen, lineaPGN)) if numero == -1: self.liVariantes.append(uno.partida) else: self.liVariantes[numero] = uno.partida self.guardar() self.mostrar()
def editaVariante(self, linea, siEngineActivo=False): import Code.Variantes as Variantes gestor = self.wParent.gestor pos, jg = gestor.jugadaActiva() if jg is None: return None fen = jg.posicionBase.fen() return Variantes.editaVariante(gestor.procesador, gestor, fen, linea, siEngineActivo=siEngineActivo)
def editaVariante(self, linea, siEngineActivo=False): import Code.Variantes as Variantes siCompetitivo = False if hasattr(self.wParent, "gestor") and hasattr(self.wParent.gestor, "siCompetitivo"): if self.wParent.gestor.siCompetitivo: siCompetitivo = self.wParent.gestor.estado != kFinJuego if siCompetitivo: siEngineActivo = False gestor = self.wParent.gestor pos, jg = gestor.jugadaActiva() if jg is None: return None fen = jg.posicionBase.fen() return Variantes.editaVariante(gestor.procesador, gestor, fen, linea, siEngineActivo=siEngineActivo, siCompetitivo=siCompetitivo)
def editar(self, fila): if fila is None: nombre = "" eco = "" pgn = "" estandar = True titulo = _("New opening") else: reg = self.lista[fila] nombre = reg["NOMBRE"] eco = reg["ECO"] pgn = reg["PGN"] estandar = reg["ESTANDAR"] titulo = nombre # Datos liGen = [(None, None)] liGen.append((_("Name") + ":", nombre)) config = FormLayout.Editbox("ECO", ancho=30, rx="[A-Z, a-z][0-9][0-9]") liGen.append((config, eco)) liGen.append((_("Add to standard list") + ":", estandar)) # Editamos resultado = FormLayout.fedit(liGen, title=titulo, parent=self, anchoMinimo=460, icon=Iconos.Apertura()) if resultado is None: return accion, liResp = resultado nombre = liResp[0].strip() if not nombre: return eco = liResp[1].upper() estandar = liResp[2] fen = ControlPosicion.FEN_INICIAL self.procesador.procesador = self.procesador # ya que editaVariante espera un gestor resp = Variantes.editaVariante(self.procesador, self.procesador, fen, pgn, titulo=nombre, siBlancasAbajo=True) if resp: pgn, a1h8 = resp reg = {} reg["NOMBRE"] = nombre reg["ECO"] = eco reg["PGN"] = pgn reg["A1H8"] = a1h8 reg["ESTANDAR"] = estandar if fila is None: self.lista.append(reg) self.grid.refresh() self.grabar() else: self.lista[fila] = reg self.grid.refresh() self.grabar()
def editar(self, fila): if fila is None: nombre = "" eco = "" pgn = "" estandar = True titulo = _("New opening") else: reg = self.lista[fila] nombre = reg["NOMBRE"] eco = reg["ECO"] pgn = reg["PGN"] estandar = reg["ESTANDAR"] titulo = nombre # Datos liGen = [(None, None)] liGen.append(( _("Name") + ":", nombre )) config = FormLayout.Editbox("ECO", ancho=30, rx="[A-Z, a-z][0-9][0-9]") liGen.append((config, eco )) liGen.append(( _("Add to standard list") + ":", estandar )) # Editamos resultado = FormLayout.fedit(liGen, title=titulo, parent=self, anchoMinimo=460, icon=Iconos.Apertura()) if resultado is None: return accion, liResp = resultado nombre = liResp[0].strip() if not nombre: return eco = liResp[1].upper() estandar = liResp[2] fen = ControlPosicion.FEN_INICIAL self.procesador.procesador = self.procesador # ya que editaVariante espera un gestor resp = Variantes.editaVariante(self.procesador, self.procesador, fen, pgn, titulo=nombre) if resp: pgn, a1h8 = resp reg = {} reg["NOMBRE"] = nombre reg["ECO"] = eco reg["PGN"] = pgn reg["A1H8"] = a1h8 reg["ESTANDAR"] = estandar if fila is None: self.lista.append(reg) self.grid.refresh() self.grabar() else: self.lista[fila] = reg self.grid.refresh() self.grabar()
def editar(self, fila): if fila is None: name = "" eco = "" pgn = "" estandar = True titulo = _("New opening") else: reg = self.lista[fila] name = reg["NOMBRE"] eco = reg["ECO"] pgn = reg["PGN"] estandar = reg["ESTANDAR"] titulo = name # Datos liGen = [(None, None)] liGen.append((_("Name") + ":", name)) config = FormLayout.Editbox("ECO", ancho=30, rx="[A-Z, a-z][0-9][0-9]") liGen.append((config, eco)) liGen.append((_("Add to standard list") + ":", estandar)) # Editamos resultado = FormLayout.fedit(liGen, title=titulo, parent=self, anchoMinimo=460, icon=Iconos.Apertura()) if resultado is None: return accion, liResp = resultado name = liResp[0].strip() if not name: return eco = liResp[1].upper() estandar = liResp[2] fen = FEN_INITIAL self.procesador.procesador = self.procesador # ya que editaVariante espera un gestor if pgn: ok, game = Game.pgn_game(pgn) if not ok: game = Game.Game() else: game = Game.Game() resp = Variantes.editaVariante(self.procesador, game, titulo=name, is_white_bottom=True) if resp: game = resp reg = {} reg["NOMBRE"] = name reg["ECO"] = eco reg["PGN"] = game.pgnBaseRAW() reg["A1H8"] = game.pv() reg["ESTANDAR"] = estandar if fila is None: self.lista.append(reg) self.grid.refresh() self.grabar() else: self.lista[fila] = reg self.grid.refresh() self.grabar()