Exemplo n.º 1
0
def eligeJugadaBooks(pantalla, liJugadas, siBlancas, siSelectSiempre=True):
    pantalla.cursorFueraTablero()
    menu = QTVarios.LCMenu(pantalla)
    f = Controles.TipoLetra(nombre="Courier New", puntos=10)
    menu.ponFuente(f)

    titulo = _("White") if siBlancas else _("Black")
    icono = Iconos.Carpeta()

    menu.opcion(None, titulo, icono)
    menu.separador()

    icono = Iconos.PuntoNaranja() if siBlancas else Iconos.PuntoNegro()

    for desde, hasta, coronacion, pgn, peso in liJugadas:
        menu.opcion((desde, hasta, coronacion), pgn, icono)
        menu.separador()

    resp = menu.lanza()
    if resp:
        return resp
    else:
        if siSelectSiempre:
            desde, hasta, coronacion, pgn, peso = liJugadas[0]
            return desde, hasta, coronacion
        else:
            return None
Exemplo n.º 2
0
def eligeJugadaBooks(main_window, li_moves, is_white, siSelectSiempre=True):
    main_window.cursorFueraBoard()
    menu = QTVarios.LCMenu(main_window)
    f = Controles.TipoLetra(name="Courier New", puntos=10)
    menu.ponFuente(f)

    titulo = _("White") if is_white else _("Black")
    icono = Iconos.Carpeta()

    menu.opcion(None, titulo, icono)
    menu.separador()

    icono = Iconos.PuntoNaranja() if is_white else Iconos.PuntoNegro()

    for from_sq, to_sq, promotion, pgn, peso in li_moves:
        menu.opcion((from_sq, to_sq, promotion), pgn, icono)
        menu.separador()

    resp = menu.lanza()
    if resp:
        return resp
    else:
        if siSelectSiempre:
            from_sq, to_sq, promotion, pgn, peso = li_moves[0]
            return from_sq, to_sq, promotion
        else:
            return None
Exemplo n.º 3
0
 def menuFNS(self, menu, label, xopcion):
     td = TrainingDir(Code.path_resource("Trainings"))
     td.addOtherFolder(self.configuration.personal_training_folder)
     td.addOtherFolder(self.configuration.folder_tactics())
     bmenu = menu.submenu(label, Iconos.Carpeta())
     td.reduce()  # Elimina carpetas vacias
     td.menu(bmenu, xopcion)
Exemplo n.º 4
0
def eligeJugadaBooks(pantalla, liJugadas, is_white, siSelectSiempre=True):
    pantalla.cursorFueraTablero()
    menu = QTVarios.LCMenu(pantalla)
    f = Controles.TipoLetra(name=Code.font_mono, puntos=10)
    menu.ponFuente(f)

    titulo = _("White") if is_white else _("Black")
    icono = Iconos.Carpeta()

    menu.opcion(None, titulo, icono)
    menu.separador()

    icono = Iconos.PuntoNaranja() if is_white else Iconos.PuntoNegro()

    for xfrom, xto, promotion, pgn, peso in liJugadas:
        menu.opcion((xfrom, xto, promotion), pgn, icono)
        menu.separador()

    resp = menu.lanza()
    if resp:
        return resp
    else:
        if siSelectSiempre:
            xfrom, xto, promotion, pgn, peso = liJugadas[0]
            return xfrom, xto, promotion
        else:
            return None
Exemplo n.º 5
0
def eligeJugada(gestor, li_moves, siGM):
    menu = QTVarios.LCMenu(gestor.main_window)

    if siGM:
        titulo = gestor.nombreGM
        icono = Iconos.GranMaestro()
    else:
        titulo = _("Opponent's move")
        icono = Iconos.Carpeta()
    menu.opcion(None, titulo, icono)
    menu.separador()

    icono = Iconos.PuntoAzul() if siGM else Iconos.PuntoNaranja()

    for from_sq, to_sq, promotion, rotulo, pgn in li_moves:

        if rotulo and (len(li_moves) > 1):
            txt = "%s - %s" % (pgn, rotulo)
        else:
            txt = pgn
        menu.opcion((from_sq, to_sq, promotion), txt, icono)
        menu.separador()

    resp = menu.lanza()
    if resp:
        return resp
    else:
        from_sq, to_sq, promotion, rotulo, pgn = li_moves[0]
        return from_sq, to_sq, promotion
Exemplo n.º 6
0
def select_move(manager, li_moves, is_gm):
    menu = QTVarios.LCMenu(manager.main_window)

    if is_gm:
        titulo = manager.nombreGM
        icono = Iconos.GranMaestro()
    else:
        titulo = _("Opponent's move")
        icono = Iconos.Carpeta()
    menu.opcion(None, titulo, icono)
    menu.separador()

    icono = Iconos.PuntoAzul() if is_gm else Iconos.PuntoNaranja()

    for from_sq, to_sq, promotion, label, pgn in li_moves:

        if label and (len(li_moves) > 1):
            txt = "%s - %s" % (pgn, label)
        else:
            txt = pgn
        menu.opcion((from_sq, to_sq, promotion), txt, icono)
        menu.separador()

    resp = menu.lanza()
    if resp:
        return resp
    else:
        from_sq, to_sq, promotion, label, pgn = li_moves[0]
        return from_sq, to_sq, promotion
Exemplo n.º 7
0
    def opciones(self):
        menu = QTVarios.LCMenu(self.pantalla)

        menu.opcion(self.cambiaConfiguracion, _("Configuration"), Iconos.Opciones())
        menu.separador()

        menu1 = menu.submenu(_("Colors"), Iconos.Colores())
        menu1.opcion(self.editaColoresTablero, _("Main board"), Iconos.EditarColores())
        menu1.separador()
        menu1.opcion(self.cambiaColores, _("General"), Iconos.Vista())
        menu.separador()

        menu1 = menu.submenu(_("Sound"), Iconos.SoundTool())
        menu1.opcion(self.sonidos, _("Custom sounds"), Iconos.S_Play())
        menu.separador()
        menu.opcion(self.setPassword, _("Set password"), Iconos.Password())

        if self.configuracion.siMain:
            menu.separador()
            menu.opcion(self.usuarios, _("Users"), Iconos.Usuarios())
            menu.separador()

            menu1 = menu.submenu(_("User data folder"), Iconos.Carpeta())
            menu1.opcion(self.folder_change, _("Change the folder"), Iconos.FolderChange())
            if not Configuracion.isDefaultFolder():
                menu1.separador()
                menu1.opcion(self.folder_default, _("Set the default"), Iconos.Defecto())

        resp = menu.lanza()
        if resp:
            if isinstance(resp, tuple):
                resp[0](resp[1])
            else:
                resp()
Exemplo n.º 8
0
def eligeJugada(gestor, liJugadas, siGM):
    menu = QTVarios.LCMenu(gestor.pantalla)

    if siGM:
        titulo = gestor.nombreGM
        icono = Iconos.GranMaestro()
    else:
        titulo = _("Opponent's move")
        icono = Iconos.Carpeta()
    menu.opcion(None, titulo, icono)
    menu.separador()

    icono = Iconos.PuntoAzul() if siGM else Iconos.PuntoNaranja()

    for desde, hasta, coronacion, rotulo, pgn in liJugadas:

        if rotulo and (len(liJugadas) > 1):
            txt = "%s - %s" % (pgn, rotulo)
        else:
            txt = pgn
        menu.opcion((desde, hasta, coronacion), txt, icono)
        menu.separador()

    resp = menu.lanza()
    if resp:
        return resp
    else:
        desde, hasta, coronacion, rotulo, pgn = liJugadas[0]
        return desde, hasta, coronacion
Exemplo n.º 9
0
 def menu(self, bmenu, xopcion):
     icoOp = Iconos.PuntoNaranja()
     icoDr = Iconos.Carpeta()
     for folder in self.folders:
         submenu1 = bmenu.submenu(folder.name, icoDr)
         folder.menu(submenu1, xopcion)
     for xfile in self.files:
         xopcion(bmenu, "ep_%s" % xfile.path, xfile.name, icoOp)
Exemplo n.º 10
0
 def seek_folder(submenu, folder):
     for entry in os.scandir(folder):
         if entry.is_dir():
             smenu = submenu.submenu(entry.name, Iconos.Carpeta())
             seek_folder(smenu, entry.path)
     for entry in os.scandir(folder):
         if entry.is_file() and entry.name.lower().endswith(".svg"):
             ico = QTVarios.fsvg2ico(entry.path, 32)
             if ico:
                 submenu.opcion(entry.path, entry.name[:-4], ico)
Exemplo n.º 11
0
 def add_submenu(self, submenu, rondo, indicador_previo=None):
     self.li_elems.sort(key=lambda x: x.name.lower())
     previo = "" if indicador_previo is None else indicador_previo
     for elem in self.li_elems:
         if elem.is_folder:
             subsubmenu = submenu.submenu(elem.name, Iconos.Carpeta())
             elem.add_submenu(subsubmenu, rondo, indicador_previo)
     for elem in self.li_elems:
         if not elem.is_folder:
             submenu.opcion(previo + elem.path, elem.name, rondo.otro())
Exemplo n.º 12
0
    def opciones(self):
        menu = QTVarios.LCMenu(self.pantalla)

        menu.opcion(self.cambiaConfiguracion, _("Configuration"),
                    Iconos.Opciones())
        menu.separador()

        menu1 = menu.submenu(_("Colors"), Iconos.Colores())
        menu1.opcion(self.editaColoresTablero, _("Main board"),
                     Iconos.EditarColores())
        menu1.separador()
        menu1.opcion(self.cambiaColoresPGN, _("PGN"), Iconos.Vista())
        menu.separador()

        menu1 = menu.submenu(_("Change board size"), Iconos.TamTablero())
        menu1.opcion(self.size_main, _("Main board"), Iconos.PuntoVerde())
        menu1.separador()
        menu2 = menu1.submenu(_("Tutor board"), Iconos.PuntoAzul())
        for txt, size in ((_("Large"), 64), (_("Medium"),
                                             48), (_("Medium-small"), 32),
                          (_("Small"), 24), (_("Very small"), 16)):
            menu2.opcion((self.size_tutor, size), txt, Iconos.PuntoNaranja())
            menu2.separador()

        menu.separador()
        menu1 = menu.submenu(_("Sound"), Iconos.SoundTool())
        menu1.opcion(self.sonidos, _("Custom sounds"), Iconos.S_Play())
        menu.separador()
        menu.opcion(self.favoritos, _("Training favorites"), Iconos.Corazon())

        menu.separador()
        menu.opcion(self.setPassword, _("Set password"), Iconos.Password())

        if self.configuracion.siMain:
            menu.separador()
            menu.opcion(self.usuarios, _("Users"), Iconos.Usuarios())
            menu.separador()

            menu1 = menu.submenu(_("User data folder"), Iconos.Carpeta())
            menu1.opcion(self.folder_change, _("Change the folder"),
                         Iconos.FolderChange())
            if not Configuracion.isDefaultFolder():
                menu1.separador()
                menu1.opcion(self.folder_default, _("Set the default"),
                             Iconos.Defecto())

        resp = menu.lanza()
        if resp:
            if isinstance(resp, tuple):
                resp[0](resp[1])
            else:
                resp()
Exemplo n.º 13
0
    def options(self):
        menu = QTVarios.LCMenu(self.main_window)

        menu.opcion(self.cambiaconfiguration, _("Configuration"), Iconos.Opciones())
        menu.separador()

        menu1 = menu.submenu(_("Colors"), Iconos.Colores())
        menu1.opcion(self.editColoresBoard, _("Main board"), Iconos.EditarColores())
        menu1.separador()
        menu1.opcion(self.cambiaColores, _("General"), Iconos.Vista())
        menu.separador()

        # Logs of engines
        is_engines_log_active = Code.list_engine_managers.is_logs_active()
        label = _("Save engines log")
        if is_engines_log_active:
            icono = Iconos.LogActive()
            label += " ...%s..." % _("Working")
            key = self.log_close
        else:
            icono = Iconos.LogInactive()
            key = self.log_open
        menu.opcion(key, label, icono)
        menu.separador()

        menu.opcion(self.atajos_edit, _("Shortcuts"), Iconos.Atajos())
        menu.separador()

        menu.opcion(self.sonidos, _("Custom sounds"), Iconos.SoundTool())
        menu.separador()
        menu.opcion(self.set_password, _("Set password"), Iconos.Password())

        if self.configuration.is_main:
            menu.separador()
            menu.opcion(self.usuarios, _("Users"), Iconos.Usuarios())
            menu.separador()

            menu1 = menu.submenu(_("User data folder"), Iconos.Carpeta())
            menu1.opcion(self.folder_change, _("Change the folder"), Iconos.FolderChange())
            if not Configuration.is_default_folder():
                menu1.separador()
                menu1.opcion(self.folder_default, _("Set the default"), Iconos.Defecto())

        resp = menu.lanza()
        if resp:
            if isinstance(resp, tuple):
                resp[0](resp[1])
            else:
                resp()
Exemplo n.º 14
0
    def ajustaPlayer(self, mrm):
        posicion = self.partida.ultPosicion

        mi = MotorInterno.MotorInterno()
        mi.ponFen(posicion.fen())

        li = mi.dameMovimientos()

        liOpciones = []
        for rm in mrm.liMultiPV:
            liOpciones.append((rm, "%s (%s)" % (posicion.pgnSP(
                rm.desde, rm.hasta, rm.coronacion), rm.abrTexto())))
            mv = rm.movimiento()
            for x in range(len(li)):
                if li[x].pv() == mv:
                    del li[x]
                    break

        for mj in li:
            rm = XMotorRespuesta.RespuestaMotor("", posicion.siBlancas)
            pv = mj.pv()
            rm.desde = pv[:2]
            rm.hasta = pv[2:4]
            rm.coronacion = pv[4:]
            rm.puntos = None
            liOpciones.append(
                (rm, posicion.pgnSP(rm.desde, rm.hasta, rm.coronacion)))

        if len(liOpciones) == 1:
            return liOpciones[0][0]

        menu = QTVarios.LCMenu(self.pantalla)
        titulo = _("White") if posicion.siBlancas else _("Black")
        icono = Iconos.Carpeta()

        self.pantalla.cursorFueraTablero()
        menu.opcion(None, titulo, icono)
        menu.separador()
        icono = Iconos.PuntoNaranja(
        ) if posicion.siBlancas else Iconos.PuntoNegro()
        for rm, txt in liOpciones:
            menu.opcion(rm, txt, icono)
        while True:
            resp = menu.lanza()
            if resp:
                return resp
Exemplo n.º 15
0
    def ajustaPlayer(self, mrm):
        position = self.game.last_position

        FasterCode.set_fen(position.fen())
        li = FasterCode.get_exmoves()

        li_options = []
        for rm in mrm.li_rm:
            li_options.append((rm, "%s (%s)" % (position.pgn_translated(
                rm.from_sq, rm.to_sq, rm.promotion), rm.abrTexto())))
            mv = rm.movimiento()
            for x in range(len(li)):
                if li[x].move() == mv:
                    del li[x]
                    break

        for mj in li:
            rm = EngineResponse.EngineResponse("", position.is_white)
            rm.from_sq = mj.from_sq()
            rm.to_sq = mj.to_sq()
            rm.promotion = mj.promotion()
            rm.puntos = None
            li_options.append(
                (rm, position.pgn_translated(rm.from_sq, rm.to_sq,
                                             rm.promotion)))

        if len(li_options) == 1:
            return li_options[0][0]

        menu = QTVarios.LCMenu(self.main_window)
        titulo = _("White") if position.is_white else _("Black")
        icono = Iconos.Carpeta()

        self.main_window.cursorFueraBoard()
        menu.opcion(None, titulo, icono)
        menu.separador()
        icono = Iconos.PuntoNaranja(
        ) if position.is_white else Iconos.PuntoNegro()
        for rm, txt in li_options:
            menu.opcion(rm, txt, icono)
        while True:
            resp = menu.lanza()
            if resp:
                return resp
Exemplo n.º 16
0
        def miraDir(submenu, base, dr):
            if base:
                pathCarpeta = base + dr + "/"
                smenu = submenu.submenu(dr, Iconos.Carpeta())
            else:
                pathCarpeta = dr + "/"
                smenu = submenu
            li = []
            for fich in os.listdir(pathCarpeta):
                pathFich = pathCarpeta + fich
                if os.path.isdir(pathFich):
                    miraDir(smenu, pathCarpeta, fich)
                elif pathFich.lower().endswith(".svg"):
                    li.append((pathFich, fich))

            for pathFich, fich in li:
                ico = QTVarios.fsvg2ico(pathFich, 32)
                if ico:
                    smenu.opcion(pathFich, fich[:-4], ico)
Exemplo n.º 17
0
    def run(self):
        dic = self.configuration.read_variables("BRIDGE11")
        menu = QTVarios.LCMenu(self.wowner)
        menu.opcion("db_folder", _("Import databases in a folder"), Iconos.Carpeta())
        menu.opcion("db_file", _("Import a database"), Iconos.Database())
        resp = menu.lanza()
        if resp == "db_folder":
            folder = QTUtil2.leeCarpeta(self.wowner, dic.get("FOLDER", "../.."))
            if not folder:
                return
            dic["FOLDER"] = folder
            self.configuration.write_variables("BRIDGE11", dic)

            ini_folder = os.curdir
            os.chdir(os.path.join(Code.folder_resources, "Bridge11"))
            self.py27("ImportDatabases.py", "folder", folder)
            os.chdir(ini_folder)

            entry: os.DirEntry
            for entry in os.scandir(folder):
                if entry.name.endswith(".convert_end"):
                    self.phase2(entry)
Exemplo n.º 18
0
 def menuFNS(self, menu, rotulo, xopcion):
     td = TrainingDir("Trainings")
     td.addOtherFolder(self.procesador.configuracion.dirPersonalTraining)
     bmenu = menu.submenu(rotulo, Iconos.Carpeta())
     td.reduce()  # Elimina carpetas vacias
     td.menu(bmenu, xopcion)