def __init__(self, owner, engine, segundos, min_min, min_max, linea=None, ref=None): super(WPotencia, self).__init__(owner, _("Determine your calculating power"), Iconos.Potencia(), "potencia") self.game, self.dicPGN, info, self.jugadaInicial, self.linea = ( lee_1_linea_mfn(linea) if linea else lee_linea_mfn() ) self.fen = self.game.move(self.jugadaInicial).position.fen() self.ref = ref self.historico = owner.historico self.procesador = owner.procesador self.configuration = self.procesador.configuration if engine.startswith("*"): engine = engine[1:] confMotor = self.configuration.buscaTutor(engine) self.xtutor = self.procesador.creaManagerMotor(confMotor, segundos * 1000, None) self.xtutor.maximizaMultiPV() # Board config_board = self.configuration.config_board("POTENCIA", 48) self.min_min = min_min self.min_max = min_max cp = self.game.move(self.jugadaInicial).position self.board = Board.BoardEstatico(self, config_board) self.board.crea() self.board.ponerPiezasAbajo(cp.is_white) self.board.set_position(cp) # Rotulo informacion self.lbInformacion = self.creaLBInformacion(info, cp) # Consultar la game self.btConsultar = Controles.PB(self, _("Show game"), self.consultar, plano=False) # Rotulo vtime self.lbTiempo = Controles.LB(self, "").align_center() self.liwm = [] conj_piezas = self.board.piezas is_white = cp.is_white for i in range(12): wm = WBlqMove(self, conj_piezas, is_white, i) self.liwm.append(wm) is_white = not is_white # Tool bar li_acciones = ( (_("Close"), Iconos.MainMenu(), self.terminar), (_("Cancel"), Iconos.Cancelar(), self.cancelar), (_("Check"), Iconos.Check(), self.comprobar), ) self.tb = Controles.TBrutina(self, li_acciones) # Layout lyInfo = Colocacion.H().relleno().control(self.lbInformacion).control(self.btConsultar).relleno() lyT = Colocacion.V().relleno().control(self.board).otro(lyInfo).controlc(self.lbTiempo).relleno() lyV = Colocacion.V() for wm in self.liwm: lyV.control(wm) lyV.relleno() f = Controles.TipoLetra(puntos=10, peso=75) self.gbMovs = Controles.GB(self, _("Next moves"), lyV).ponFuente(f) lyTV = Colocacion.H().otro(lyT).control(self.gbMovs).relleno() ly = Colocacion.V().control(self.tb).otro(lyTV).relleno() self.setLayout(ly) self.restore_video() self.adjustSize() liTB = [self.cancelar] # Tiempo self.timer = None if min_min or min_max: self.time_base = time.time() if min_min: self.gbMovs.hide() self.start_clock(self.pensandoHastaMin) else: liTB.insert(0, self.comprobar) self.start_clock(self.pensandoHastaMax) self.pon_toolbar(liTB) self.liwm[0].activa() self.btConsultar.hide() self.ultimaCelda = None
def __init__(self, owner, fenIni, fenFin, liMV, info): QTVarios.WDialogo.__init__(self, owner, _("Moves between two positions"), Iconos.Puente(), "puente") self.owner = owner self.historico = owner.historico self.procesador = owner.procesador self.configuration = self.procesador.configuration self.liMV = liMV self.fenIni = fenIni self.fenFin = fenFin nivel = len(liMV) # Boards config_board = self.configuration.config_board("PUENTE", 32) cpIni = Position.Position() cpIni.read_fen(fenIni) is_white = cpIni.is_white self.boardIni = Board.BoardEstatico(self, config_board) self.boardIni.crea() self.boardIni.ponerPiezasAbajo(is_white) self.boardIni.set_position(cpIni) cpFin = Position.Position() cpFin.read_fen(fenFin) self.boardFin = Board.BoardEstatico(self, config_board) self.boardFin.crea() self.boardFin.ponerPiezasAbajo(is_white) # esta bien self.boardFin.set_position(cpFin) # Rotulo informacion self.lbInformacion = Controles.LB(self, self.textoLBInformacion( info, cpIni)).align_center() # Rotulo vtime self.lbTiempo = Controles.LB(self, "").align_center() # Movimientos self.liwm = [] conj_piezas = self.boardIni.piezas ly = Colocacion.V().margen(4).relleno() for i in range(nivel): wm = WEdMove(self, conj_piezas, is_white) self.liwm.append(wm) is_white = not is_white ly.control(wm) ly.relleno() gbMovs = Controles.GB(self, _("Next moves"), ly).ponFuente( Controles.TipoLetra(puntos=10, peso=75)) # Botones f = Controles.TipoLetra(puntos=12, peso=75) self.btComprobar = Controles.PB(self, _("Check"), self.comprobar, plano=False).ponIcono( Iconos.Check(), icon_size=32).ponFuente(f) self.btSeguir = (Controles.PB(self, _("Continue"), self.seguir, plano=False).ponIcono( Iconos.Pelicula_Seguir(), icon_size=32).ponFuente(f)) self.btTerminar = Controles.PB(self, _("Close"), self.terminar, plano=False).ponIcono( Iconos.MainMenu(), icon_size=32).ponFuente(f) self.btCancelar = Controles.PB(self, _("Cancel"), self.terminar, plano=False).ponIcono( Iconos.Cancelar(), icon_size=32).ponFuente(f) # Layout lyC = (Colocacion.V().control(self.btCancelar).control( self.btTerminar).relleno().control(gbMovs).relleno(1).control( self.btComprobar).control(self.btSeguir).relleno()) lyTM = Colocacion.H().control(self.boardIni).otro(lyC).control( self.boardFin).relleno() ly = Colocacion.V().otro(lyTM).controlc(self.lbInformacion).controlc( self.lbTiempo).relleno().margen(3) self.setLayout(ly) self.restore_video() self.adjustSize() # Tiempo self.time_base = time.time() self.btSeguir.hide() self.btTerminar.hide() self.liwm[0].activa() self.ultimaCelda = None
def __init__(self, owner, db_mate15, mate15): QTVarios.WDialogo.__init__(self, owner, _("Mate in 1½"), Iconos.Mate15(), "runmate15") self.configuration = Code.configuration self.mate15 = mate15 self.db_mate15 = db_mate15 conf_board = self.configuration.config_board("RUNMATE15", 64) self.board = Board.BoardEstatico(self, conf_board) self.board.crea() # Rotulo informacion self.lb_info = Controles.LB(self, "[%d] %s" % (self.mate15.pos + 1, self.mate15.info)) self.lb_info.ponTipoLetra(puntos=self.configuration.x_pgn_fontpoints).align_center().set_wrap() self.lb_info.setStyleSheet("QWidget { background-color: #1f497d; color: #FFFFFF;padding: 16px; }") self.lb_first_move = Controles.LB(self).ponTipoLetra(puntos=12, peso=500) self.bt_check = Controles.PB(self, _("Check"), self.check, False).ponIcono(Iconos.Check(), icon_size=20) self.lb_result = Controles.LB(self).ponTipoLetra(puntos=12, peso=500) # Movimientos self.li_lb_wm = [] ly = Colocacion.G().margen(4) for row in range(10): lb = Controles.LB(self).ponTipoLetra(puntos=12, peso=500) wm = WRunCommon.WEdMove(self) self.li_lb_wm.append((lb, wm)) ly.controld(lb, row, 0) ly.columnaVacia(1, 20) ly.control(wm, row, 2) lb.hide() wm.hide() ly.filaVacia(10, 20) ly.controlc(self.bt_check, 11, 0, numColumnas=3) ly.controlc(self.lb_result, 12, 0, numColumnas=3) self.gb = Controles.GB(self, _("Next moves and their solutions"), ly).ponFuente(Controles.TipoLetra(puntos=10, peso=75)) self.gb.hide() li_acciones = ( (_("Close"), Iconos.MainMenu(), self.terminar), None, (_("Begin"), Iconos.Empezar(), self.begin), (_("Restart"), Iconos.Reset(), self.restart), (_("Continue"), Iconos.Pelicula_Seguir(), self.seguir), ) self.tb = QTVarios.LCTB(self, li_acciones, style=QtCore.Qt.ToolButtonTextBesideIcon, icon_size=32) self.show_tb(self.terminar, self.begin) ly_left = Colocacion.V().control(self.tb).control(self.board) ly_right = Colocacion.V().controlc(self.lb_info).espacio(40).controlc(self.lb_first_move).espacio(20).control(self.gb).relleno() ly_center = Colocacion.H().otro(ly_left).otro(ly_right).margen(3) self.setLayout(ly_center) self.restore_video() self.adjustSize() self.gb.setDisabled(True) self.li_lb_wm[0][1].activa() self.ultimaCelda = None
def __init__(self, owner, game, nivel, white, black, siClock): QTVarios.WDialogo.__init__(self, owner, owner.label(), Iconos.PGN(), "learnpuente") self.owner = owner self.procesador = owner.procesador self.configuration = self.procesador.configuration self.game = game self.nivel = nivel self.white = white self.black = black self.siClock = siClock self.repTiempo = 3000 self.repWorking = False # Tool bar self.tb = Controles.TBrutina(self, []) self.pon_toolbar(self.INICIO) # Boards config_board = self.configuration.config_board("LEARNPGN", 48) self.boardIni = Board.Board(self, config_board) self.boardIni.crea() self.boardIni.set_dispatcher(self.player_has_moved, None) self.lbIni = Controles.LB( self).align_center().set_foreground_backgound( "#076C9F", "#EFEFEF").anchoMinimo(self.boardIni.ancho) lyIni = Colocacion.V().control(self.boardIni).control(self.lbIni) self.boardFin = Board.BoardEstatico(self, config_board) self.boardFin.crea() self.lbFin = Controles.LB( self).align_center().set_foreground_backgound( "#076C9F", "#EFEFEF").anchoMinimo(self.boardFin.ancho) lyFin = Colocacion.V().control(self.boardFin).control(self.lbFin) # Rotulo vtime f = Controles.TipoLetra(puntos=30, peso=75) self.lbReloj = (Controles.LB( self, "00:00").ponFuente(f).align_center().set_foreground_backgound( "#076C9F", "#EFEFEF").anchoMinimo(200)) self.lbReloj.setFrameStyle(QtWidgets.QFrame.Box | QtWidgets.QFrame.Raised) # Movimientos flb = Controles.TipoLetra(puntos=11) self.lbInfo = Controles.LB(self).anchoFijo(200).set_wrap().ponFuente( flb) # Layout lyC = Colocacion.V().control(self.lbReloj).control( self.lbInfo).relleno() lyTM = Colocacion.H().otro(lyIni).otro(lyC).otro(lyFin).relleno() ly = Colocacion.V().control(self.tb).otro(lyTM).relleno().margen(3) self.setLayout(ly) self.restore_video() self.adjustSize() self.working_clock = siClock if siClock: QtCore.QTimer.singleShot(500, self.ajustaReloj) else: self.lbReloj.hide() self.reset()