def __init__(self, owner, liFens, engine, segundos, fns): super(WDailyTest, self).__init__(owner, _("Your daily test"), Iconos.DailyTest(), "nivel") 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() self.historico = owner.historico # Board config_board = self.configuration.config_board("LEVEL", 48) self.liFens = liFens self.nFens = len(self.liFens) self.juego = 0 self.liPuntos = [] self.li_pv = [] self.li_tiempos = [] self.fns = fns self.board = Board.Board(self, config_board) self.board.crea() self.board.set_dispatcher(self.player_has_moved) # Rotulos informacion self.lbColor = Controles.LB(self, "").set_wrap().anchoMinimo(200) self.lbJuego = Controles.LB(self, "").align_center() # Tool bar li_acciones = ( # ( _( "Start" ), Iconos.Empezar(), "empezar" ), (_("Analysis"), Iconos.Tutor(), "analizar"), (_("Cancel"), Iconos.Cancelar(), "cancelar"), (_("Continue"), Iconos.Pelicula_Seguir(), "seguir"), (_("Resign"), Iconos.Abandonar(), "abandonar"), ) self.tb = Controles.TB(self, li_acciones) lyT = Colocacion.V().control(self.board).relleno() lyV = Colocacion.V().control(self.lbJuego).relleno().control( self.lbColor).relleno(2) lyTV = Colocacion.H().otro(lyT).otro(lyV) ly = Colocacion.V().control(self.tb).otro(lyTV) self.setLayout(ly) self.position = Position.Position() self.restore_video() self.play_next_move()
def __init__(self, owner, liFens, motor, segundos, fns): super(WDailyTest, self).__init__(owner, _("Your daily test"), Iconos.DailyTest(), "nivel") self.procesador = owner.procesador self.configuracion = self.procesador.configuracion if motor.startswith("*"): motor = motor[1:] confMotor = self.configuracion.buscaTutor(motor, "mcbrain") self.xtutor = self.procesador.creaGestorMotor(confMotor, segundos * 1000, None) self.xtutor.maximizaMultiPV() self.historico = owner.historico # Tablero confTablero = self.configuracion.confTablero("NIVEL", 48) self.liFens = liFens self.nFens = len(self.liFens) self.juego = 0 self.liPuntos = [] self.liPV = [] self.liTiempos = [] self.fns = fns self.tablero = Tablero.Tablero(self, confTablero) self.tablero.crea() self.tablero.ponMensajero(self.mueveHumano) # Rotulos informacion self.lbColor = Controles.LB(self, "").ponWrap().anchoMinimo(200) self.lbJuego = Controles.LB(self, "").alinCentrado() # Tool bar liAcciones = ( # ( _( "Start" ), Iconos.Empezar(), "empezar" ), (_("Analysis"), Iconos.Tutor(), "analizar"), (_("Cancel"), Iconos.Cancelar(), "cancelar"), (_("Continue"), Iconos.Pelicula_Seguir(), "seguir"), (_("Resign"), Iconos.Abandonar(), "abandonar"), ) self.tb = Controles.TB(self, liAcciones) lyT = Colocacion.V().control(self.tablero).relleno() lyV = Colocacion.V().control(self.lbJuego).relleno().control( self.lbColor).relleno(2) lyTV = Colocacion.H().otro(lyT).otro(lyV) ly = Colocacion.V().control(self.tb).otro(lyTV) self.setLayout(ly) self.posicion = ControlPosicion.ControlPosicion() self.recuperarVideo() self.siguienteJugada()
def create_toolbar(self): self.tb = QtWidgets.QToolBar("BASIC", self) iconsTB = self.configuration.tipoIconos() self.tb.setToolButtonStyle(iconsTB) sz = 32 if iconsTB == QtCore.Qt.ToolButtonTextUnderIcon else 16 self.tb.setIconSize(QtCore.QSize(sz, sz)) style = "QToolBar {border-bottom: 1px solid gray; border-top: 1px solid gray;}" self.tb.setStyleSheet(style) # sp = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtGui, QtWidgets.QSizePolicy.Expanding) # self.tb.setSizePolicy(sp) self.tb.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.tb.customContextMenuRequested.connect(self.lanzaAtajos) self.dic_toolbar = {} dic_opciones = { TB_PLAY: (_("Play"), Iconos.Libre()), TB_COMPETE: (_("Compete"), Iconos.NuevaPartida()), TB_TRAIN: (_("Train"), Iconos.Entrenamiento()), TB_OPTIONS: (_("Options"), Iconos.Opciones()), TB_INFORMATION: (_("Information"), Iconos.Informacion()), TB_FILE: (_("File"), Iconos.File()), TB_SAVE: (_("Save"), Iconos.Grabar()), TB_SAVE_AS: (_("Save as"), Iconos.GrabarComo()), TB_OPEN: (_("Open"), Iconos.Recuperar()), TB_RESIGN: (_("Resign"), Iconos.Abandonar()), TB_REINIT: (_("Reinit"), Iconos.Reiniciar()), TB_TAKEBACK: (_("Takeback"), Iconos.Atras()), TB_ADJOURN: (_("Adjourn"), Iconos.Aplazar()), TB_Adjournments: (_("Adjournments"), Iconos.Aplazamientos()), TB_END_GAME: (_("End game"), Iconos.FinPartida()), TB_CLOSE: (_("Close"), Iconos.MainMenu()), TB_PREVIOUS: (_("Previous"), Iconos.Anterior()), TB_NEXT: (_("Next"), Iconos.Siguiente()), TB_QUIT: (_("Quit"), Iconos.FinPartida()), TB_PASTE_PGN: (_("Paste PGN"), Iconos.Pegar()), TB_READ_PGN: (_("Read PGN"), Iconos.Fichero()), TB_PGN_LABELS: (_("PGN Labels"), Iconos.InformacionPGN()), TB_OTHER_GAME: (_("Other game"), Iconos.FicheroRepite()), TB_MY_GAMES: (_("My games"), Iconos.NuestroFichero()), TB_DRAW: (_("Draw"), Iconos.Tablas()), TB_BOXROOMS_PGN: (_("Boxrooms PGN"), Iconos.BoxRooms()), TB_END: (_("End"), Iconos.MainMenu()), TB_SLOW: (_("Slow"), Iconos.Pelicula_Lento()), TB_PAUSE: (_("Pause"), Iconos.Pelicula_Pausa()), TB_CONTINUE: (_("Continue"), Iconos.Pelicula_Seguir()), TB_FAST: (_("Fast"), Iconos.Pelicula_Rapido()), TB_REPEAT: (_("Repeat"), Iconos.Pelicula_Repetir()), TB_PGN: (_("PGN"), Iconos.Pelicula_PGN()), TB_HELP: (_("Help"), Iconos.AyudaGR()), TB_LEVEL: (_("Level"), Iconos.Jugar()), TB_ACCEPT: (_("Accept"), Iconos.Aceptar()), TB_CANCEL: (_("Cancel"), Iconos.Cancelar()), TB_CONFIG: (_("Config"), Iconos.Configurar()), TB_UTILITIES: (_("Utilities"), Iconos.Utilidades()), TB_VARIATIONS: (_("Variations"), Iconos.VariationsG()), TB_TOOLS: (_("Tools"), Iconos.Tools()), TB_CHANGE: (_("Change"), Iconos.Cambiar()), TB_SHOW_TEXT: (_("Show text"), Iconos.Modificar()), TB_HELP_TO_MOVE: (_("Help to move"), Iconos.BotonAyuda()), TB_SEND: (_("Send"), Iconos.Enviar()), TB_STOP: (_("Play now"), Iconos.Stop()), } cf = self.manager.configuration peso = 75 if cf.x_tb_bold else 50 puntos = cf.x_tb_fontpoints font = Controles.TipoLetra(puntos=puntos, peso=peso) for key, (titulo, icono) in dic_opciones.items(): accion = QtWidgets.QAction(titulo, None) accion.setIcon(icono) accion.setIconText(titulo) accion.setFont(font) accion.triggered.connect(self.run_action) accion.key = key self.dic_toolbar[key] = accion
def __init__(self, procesador, txtcategoria, nivel, segundos, listaFen, record): titulo = _("Check your memory on a chessboard") icono = Iconos.Memoria() extparam = "memoria" QTVarios.WDialogo.__init__(self, procesador.pantalla, titulo, icono, extparam) f = Controles.TipoLetra(puntos=10, peso=75) self.configuracion = procesador.configuracion self.nivel = nivel self.segundos = segundos self.record = record # Tablero confTablero = self.configuracion.confTablero("MEMORIA", 48) self.listaFen = listaFen self.posicion = ControlPosicion.ControlPosicion() self.tablero = Tablero.PosTablero(self, confTablero) self.tablero.crea() self.tablero.ponDispatchDrop(self.dispatchDrop) self.tablero.baseCasillasSC.setAcceptDrops(True) self.ultimaPieza = "P" tamPiezas = max(16, int(32 * self.tablero.confTablero.anchoPieza() / 48)) self.listaPiezasW = QTVarios.ListaPiezas(self, "P,N,B,R,Q,K", self.tablero, tamPiezas, margen=0) self.listaPiezasB = QTVarios.ListaPiezas(self, "p,n,b,r,q,k", self.tablero, tamPiezas, margen=0) # Ayuda lbAyuda = Controles.LB(self, _( "<ul><li><b>Add piece</b> : Right mouse button on empty square</li><li><b>Copy piece</b> : Left mouse button on empty square</li><li><b>Move piece</b> : Drag and drop piece with left mouse button</li><li><b>Delete piece</b> : Right mouse button on occupied square</li></ul>")) ly = Colocacion.H().control(lbAyuda) self.gbAyuda = Controles.GB(self, _("Help"), ly) # Rotulos informacion lbCategoria = Controles.LB(self, txtcategoria).ponFuente(f) lbNivel = Controles.LB(self, _X(_("Level %1/%2"), str(nivel + 1), "25")).ponFuente(f) if record: lbRecord = Controles.LB(self, _X(_("Record %1 seconds"), str(record))).ponFuente(f) # Rotulo de tiempo self.rotuloDispone = Controles.LB(self, _X(_("You have %1 seconds to remember the position of %2 pieces"), str(self.segundos), str(self.nivel + 3))).ponWrap().ponFuente(f).alinCentrado() self.rotuloDispone1 = Controles.LB(self, _("when you know you can press the Continue button")).ponWrap().ponFuente( f).alinCentrado() ly = Colocacion.V().control(self.rotuloDispone).control(self.rotuloDispone1) self.gbTiempo = Controles.GB(self, "", ly) self.rotuloDispone1.hide() # Tool bar liAcciones = ( (_("Start"), Iconos.Empezar(), "empezar"), (_("Continue"), Iconos.Pelicula_Seguir(), "seguir"), (_("Check"), Iconos.Check(), "comprobar"), (_("Target"), Iconos.Verde32(), "objetivo"), (_("Wrong"), Iconos.Rojo32(), "nuestro"), (_("Repeat"), Iconos.Pelicula_Repetir(), "repetir"), (_("Resign"), Iconos.Abandonar(), "abandonar"), ) self.tb = tb = Controles.TB(self, liAcciones) self.ponToolBar(["empezar"]) # Colocamos lyP = Colocacion.H().relleno().control(self.listaPiezasW).control(self.listaPiezasB).relleno().margen(0) lyT = Colocacion.V().control(self.tablero).otro(lyP).margen(0) lyI = Colocacion.V() lyI.control(tb) lyI.relleno() lyI.controlc(lbCategoria) lyI.controlc(lbNivel) if record: lyI.controlc(lbRecord) lyI.controlc(self.gbTiempo) lyI.relleno() lyI.control(self.gbAyuda) lyI.margen(3) ly = Colocacion.H().otro(lyT).otro(lyI).relleno() ly.margen(3) self.setLayout(ly) self.timer = None self.encenderExtras(False)
def preparaTB(self): self.dicTB = {} liOpciones = ( (_("Quit"), Iconos.Terminar(), k_terminar), (_("Play"), Iconos.Libre(), k_play), (_("Compete"), Iconos.NuevaPartida(), k_competir), (_("Train"), Iconos.Entrenamiento(), k_entrenamiento), (_("Options"), Iconos.Opciones(), k_opciones), (_("Information"), Iconos.Informacion(), k_informacion), (_("Save"), Iconos.Grabar(), k_grabar), (_("Save as"), Iconos.GrabarComo(), k_grabarComo), (_("Open"), Iconos.Recuperar(), k_recuperar), (_("Resign"), Iconos.Abandonar(), k_abandonar), (_("Reinit"), Iconos.Reiniciar(), k_reiniciar), (_("Takeback"), Iconos.Atras(), k_atras), (_("Adjourn"), Iconos.Aplazar(), k_aplazar), (_("End game"), Iconos.FinPartida(), k_finpartida), (_("Close"), Iconos.MainMenu(), k_mainmenu), (_("Reinit"), Iconos.Reiniciar(), k_ent_empezar), (_("Previous"), Iconos.Anterior(), k_anterior), (_("Next"), Iconos.Siguiente(), k_siguiente), (_("Quit"), Iconos.FinPartida(), k_pgnFin), (_("Paste PGN"), Iconos.Pegar(), k_pgnPaste), (_("Read PGN"), Iconos.Fichero(), k_pgnFichero), (_("PGN Labels"), Iconos.InformacionPGN(), k_pgnInformacion), (_("Other game"), Iconos.FicheroRepite(), k_pgnFicheroRepite), (_("My games"), Iconos.NuestroFichero(), k_pgnNuestroFichero), (_("Resign"), Iconos.Rendirse(), k_rendirse), (_("Draw"), Iconos.Tablas(), k_tablas), (_("Boxrooms PGN"), Iconos.Trasteros(), k_trasteros), (_("End"), Iconos.MainMenu(), k_peliculaTerminar), (_("Slow"), Iconos.Pelicula_Lento(), k_peliculaLento), (_("Pause"), Iconos.Pelicula_Pausa(), k_peliculaPausa), (_("Continue"), Iconos.Pelicula_Seguir(), k_peliculaSeguir), (_("Fast"), Iconos.Pelicula_Rapido(), k_peliculaRapido), (_("Repeat"), Iconos.Pelicula_Repetir(), k_peliculaRepetir), (_("PGN"), Iconos.Pelicula_PGN(), k_peliculaPGN), (_("Play"), Iconos.Jugar(), k_jugar), (_("Help"), Iconos.AyudaGR(), k_ayuda), (_("Level"), Iconos.Jugar(), k_mateNivel), (_("Accept"), Iconos.Aceptar(), k_aceptar), (_("Cancel"), Iconos.Cancelar(), k_cancelar), (_("Game of the day"), Iconos.LM(), k_jugadadia), (_("Config"), Iconos.Configurar(), k_configurar), (_("Utilities"), Iconos.Utilidades(), k_utilidades), (_("Variants"), Iconos.VariantesG(), k_variantes), (_("Tools"), Iconos.Tools(), k_tools), (_("Change"), Iconos.Cambiar(), k_cambiar), (_("Show text"), Iconos.Modificar(), k_showtext), (_("Help to move"), Iconos.BotonAyuda(), k_ayudaMover), (_("Send"), Iconos.Enviar(), k_enviar), # ( "Debug", Iconos.Camara(), 999),# Martin debug ) cf = self.gestor.configuracion peso = 75 if cf.boldTB else 50 puntos = cf.puntosTB font = Controles.TipoLetra(puntos=puntos, peso=peso) for titulo, icono, clave in liOpciones: accion = QtGui.QAction(titulo, None) accion.setIcon(icono) accion.setIconText(titulo) accion.setFont(font) self.connect(accion, QtCore.SIGNAL("triggered()"), self.procesarAccion) accion.clave = clave self.dicTB[clave] = accion
def preparaTB(self): self.dicTB = {} dic_opciones = { TB_PLAY: (_("Play"), Iconos.Libre()), TB_COMPETE: (_("Compete"), Iconos.NuevaPartida()), TB_TRAIN: (_("Train"), Iconos.Entrenamiento()), TB_OPTIONS: (_("Options"), Iconos.Opciones()), TB_INFORMATION: (_("Information"), Iconos.Informacion()), TB_FILE: (_("File"), Iconos.File()), TB_SAVE: (_("Save"), Iconos.Grabar()), TB_SAVE_AS: (_("Save as"), Iconos.GrabarComo()), TB_OPEN: (_("Open"), Iconos.Recuperar()), TB_RESIGN: (_("Resign"), Iconos.Abandonar()), TB_REINIT: (_("Reinit"), Iconos.Reiniciar()), TB_TAKEBACK: (_("Takeback"), Iconos.Atras()), TB_ADJOURN: (_("Adjourn"), Iconos.Aplazar()), TB_ADJOURNS: (_("Adjourns"), Iconos.Aplazamientos()), TB_END_GAME: (_("End game"), Iconos.FinPartida()), TB_CLOSE: (_("Close"), Iconos.MainMenu()), TB_PREVIOUS: (_("Previous"), Iconos.Anterior()), TB_NEXT: (_("Next"), Iconos.Siguiente()), TB_QUIT: (_("Quit"), Iconos.FinPartida()), TB_PASTE_PGN: (_("Paste PGN"), Iconos.Pegar()), TB_READ_PGN: (_("Read PGN"), Iconos.Fichero()), TB_PGN_LABELS: (_("PGN Labels"), Iconos.InformacionPGN()), TB_OTHER_GAME: (_("Other game"), Iconos.FicheroRepite()), TB_MY_GAMES: (_("My games"), Iconos.NuestroFichero()), TB_DRAW: (_("Draw"), Iconos.Tablas()), TB_BOXROOMS_PGN: (_("Boxrooms PGN"), Iconos.BoxRooms()), TB_END: (_("End"), Iconos.MainMenu()), TB_SLOW: (_("Slow"), Iconos.Pelicula_Lento()), TB_PAUSE: (_("Pause"), Iconos.Pelicula_Pausa()), TB_CONTINUE: (_("Continue"), Iconos.Pelicula_Seguir()), TB_FAST: (_("Fast"), Iconos.Pelicula_Rapido()), TB_REPEAT: (_("Repeat"), Iconos.Pelicula_Repetir()), TB_PGN: (_("PGN"), Iconos.Pelicula_PGN()), TB_HELP: (_("Help"), Iconos.AyudaGR()), TB_LEVEL: (_("Level"), Iconos.Jugar()), TB_ACCEPT: (_("Accept"), Iconos.Aceptar()), TB_CANCEL: (_("Cancel"), Iconos.Cancelar()), # TB_GAME_OF_THE_DAY: (_("Game of the day"), Iconos.LM()), TB_CONFIG: (_("Config"), Iconos.Configurar()), TB_UTILITIES: (_("Utilities"), Iconos.Utilidades()), TB_VARIATIONS: (_("Variations"), Iconos.VariantesG()), TB_TOOLS: (_("Tools"), Iconos.Tools()), TB_CHANGE: (_("Change"), Iconos.Cambiar()), TB_SHOW_TEXT: (_("Show text"), Iconos.Modificar()), TB_HELP_TO_MOVE: (_("Help to move"), Iconos.BotonAyuda()), TB_SEND: (_("Send"), Iconos.Enviar()), TB_STOP: (_("Play now"), Iconos.Stop()), } cf = self.gestor.configuracion peso = 75 if cf.x_tb_bold else 50 puntos = cf.x_tb_fontpoints font = Controles.TipoLetra(puntos=puntos, peso=peso) for clave, (titulo, icono) in dic_opciones.items(): accion = QtWidgets.QAction(titulo, None) accion.setIcon(icono) accion.setIconText(titulo) accion.setFont(font) accion.triggered.connect(self.run_action) accion.clave = clave self.dicTB[clave] = accion