Ejemplo n.º 1
0
    def __init__(self, owner, configuracion, db, recno):

        QTVarios.WDialogo.__init__(self, owner, _("Play against a game"),
                                   Iconos.PlayGame(), "play1game")

        self.owner = owner
        self.db = db
        self.configuracion = configuracion
        self.recno = recno
        self.registro = self.db.leeRegistro(recno)

        self.game = Game.Game()
        self.game.restore(self.registro["GAME"])

        self.lbRotulo = Controles.LB(self, self.db.rotulo(recno)).ponTipoLetra(
            puntos=12).ponColorFondoN("#076C9F", "#EFEFEF")

        self.liIntentos = self.registro.get("LIINTENTOS", [])

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("DATE", _("Date"), 80, centered=True)
        o_columns.nueva("COLOR", _("Play with"), 80, centered=True)
        o_columns.nueva("POINTS", _("Points"), 80, centered=True)
        o_columns.nueva("TIME", _("Time"), 80, centered=True)
        self.grid = Grid.Grid(self,
                              o_columns,
                              siSelecFilas=True,
                              siSeleccionMultiple=True)
        self.grid.setMinimumWidth(self.grid.anchoColumnas() + 20)

        # Tool bar
        li_acciones = ((_("Close"), Iconos.MainMenu(), self.terminar), None,
                       (_("Train"), Iconos.Entrenar(), self.empezar), None,
                       (_("Remove"), Iconos.Borrar(), self.borrar), None)
        self.tb = QTVarios.LCTB(self, li_acciones)

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.grid).control(
            self.lbRotulo).margen(3)

        self.setLayout(ly)

        self.register_grid(self.grid)
        self.restore_video(siTam=False)

        self.grid.gotop()
Ejemplo n.º 2
0
    def __init__(self, gestor, siEnVivo):

        titulo = _("Consult a book")
        icono = Iconos.Libros()
        extparam = "treebook"
        QTVarios.WDialogo.__init__(self, gestor.pantalla, titulo, icono,
                                   extparam)

        # Se lee la lista de libros1
        self.listaLibros = Books.ListaLibros()
        self.fvar = gestor.configuracion.ficheroBooks
        self.listaLibros.recuperaVar(self.fvar)

        # Comprobamos que todos esten accesibles
        self.listaLibros.comprueba()
        self.book = self.listaLibros.porDefecto()

        # fens
        fenActivo = gestor.fenActivoConInicio()  # Posicion en el tablero
        fenUltimo = gestor.fenUltimo()
        self.siEnviar = siEnVivo and (fenActivo == fenUltimo)

        self.listaMoves = ListaMoves(None, self.book, fenActivo)

        self.infoMove = InfoMove(fenActivo)

        self.wmoves = WMoves(self, self.siEnviar)

        self.splitter = splitter = QtGui.QSplitter(self)
        splitter.addWidget(self.infoMove)
        splitter.addWidget(self.wmoves)

        ly = Colocacion.H().control(splitter).margen(0)

        self.setLayout(ly)

        self.wmoves.tree.setFocus()

        anchoTablero = self.infoMove.tablero.width()

        self.resize(600 - 278 + anchoTablero, anchoTablero + 30)
        self.splitter.setSizes([296 - 278 + anchoTablero, 290])
        for col, ancho in enumerate((100, 59, 87, 0, 38)):
            self.wmoves.tree.setColumnWidth(col, ancho)

        self.ponTitulo(self.book)
Ejemplo n.º 3
0
    def __init__(self, procesador):
        super(WAbout, self).__init__(procesador.pantalla)

        self.setWindowTitle(_("About"))
        self.setWindowIcon(Iconos.Aplicacion())
        self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint)
        self.setMaximumWidth(QTUtil.anchoEscritorio())

        f = Controles.TipoLetra(puntos=10)  # 0, peso=75 )

        cabecera = '<span style="font-size:30pt; font-weight="700"; font-family:arial; color:#2D2B2B">%s</span><br>' % _(
            "Lucas Chess")
        cabecera += '<span style="font-size:15pt;">%s</span><br>' % _X(
            _("version %1"), procesador.version)
        cabecera += '<span style="font-size:8pt;color:2D2B2B">%s</span>' % "Lucas Monge"
        cabecera += ' - <a style="font-size:8pt; color:2D2B2B" href="%s">%s</a>' % (
            procesador.web, procesador.web)
        cabecera += ' - <a style="font-size:8pt; color:2D2B2B" href="%s">Blog : Fresh news</a><br>' % (
            procesador.blog, )
        cabecera += '%s <a style="font-size:8pt; color:2D2B2B" href="http://www.gnu.org/copyleft/gpl.html"> GPL</a>' % _(
            "License")

        lbIco = Controles.LB(self).ponImagen(Iconos.pmAplicacion64())
        lbTitulo = Controles.LB(self, cabecera)
        btSeguir = Controles.PB(self, _("Continue"),
                                self.accept).ponPlano(False)

        # Tabs
        tab = Controles.Tab()
        tab.ponFuente(f)

        ib = InfoBase.ThanksTo()

        for n, (k, titulo) in enumerate(ib.dic.iteritems()):
            txt = ib.texto(k)
            lb = Controles.LB(self, txt)
            lb.ponFondoN("#F6F3EE")
            lb.ponFuente(f)
            tab.addTab(lb, titulo)

        lyV1 = Colocacion.H().control(lbIco).espacio(15).control(
            lbTitulo).relleno()
        layout = Colocacion.V().otro(lyV1).espacio(10).control(tab).control(
            btSeguir).margen(10)

        self.setLayout(layout)
Ejemplo n.º 4
0
    def init2(self, oColumnas):
        self.gridDatos = Grid.Grid(self,
                                   oColumnas,
                                   siSelecFilas=True,
                                   siSeleccionMultiple=True)
        self.gridDatos.setMinimumWidth(self.gridDatos.anchoColumnas() + 20)

        # Colocamos
        lytr = Colocacion.H().relleno(1).control(self.lbRecorded).relleno(1)
        ly = Colocacion.V().control(self.tb).otro(lytr).control(
            self.gridDatos).margen(3)

        self.setLayout(ly)

        self.registrarGrid(self.gridDatos)
        self.recuperarVideo()
        self.gridDatos.gotop()
Ejemplo n.º 5
0
    def __init__(self, wParent, procesador):

        icono = Iconos.DatabaseF()
        extparam = "databasepositions"
        titulo = _("Positions Database")
        QTVarios.WDialogo.__init__(self, wParent, titulo, icono, extparam)

        self.procesador = procesador
        self.configuracion = procesador.configuracion

        self.dbGamesFEN = DBgamesFEN.DBgamesFEN(
            self.configuracion.ficheroDBgamesFEN)

        dicVideo = self.recuperarDicVideo()

        self.wgamesFEN = WBG_GamesFEN.WGamesFEN(procesador, self,
                                                self.dbGamesFEN)

        self.registrarGrid(self.wgamesFEN.grid)

        self.ultFocus = None

        self.infoMove = WBG_InfoMove.WInfomove(self, siMoves=False)

        self.splitter = splitter = QtGui.QSplitter(self)
        splitter.addWidget(self.wgamesFEN)
        splitter.addWidget(self.infoMove)

        layout = Colocacion.H().control(splitter).margen(5)

        self.setLayout(layout)

        self.recuperarVideo(anchoDefecto=1200, altoDefecto=600)
        if not dicVideo:
            dicVideo = {
                'SPLITTER': [800, 380],
                'TREE_1': 25,
                'TREE_2': 25,
                'TREE_3': 50,
                'TREE_4': 661,
            }
        sz = dicVideo.get("SPLITTER", None)
        if sz:
            self.splitter.setSizes(sz)

        self.inicializa()
Ejemplo n.º 6
0
    def __init__(self, parent):
        super(BlancasNegras, self).__init__(parent)
        self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint)

        icoP = VarGen.todasPiezas.iconoDefecto("K")
        icop = VarGen.todasPiezas.iconoDefecto("k")
        self.setWindowTitle(_("Choose Color"))
        self.setWindowIcon(icoP)

        btBlancas = Controles.PB(self, "", rutina=self.accept, plano=False).ponIcono(icoP, tamIcon=64)
        btNegras = Controles.PB(self, "", rutina=self.negras, plano=False).ponIcono(icop, tamIcon=64)

        self.resultado = True

        ly = Colocacion.H().control(btBlancas).control(btNegras)
        ly.margen(10)
        self.setLayout(ly)
    def __init__(self, manager, siEnVivo):

        titulo = _("Consult a book")
        icono = Iconos.Libros()
        extparam = "treebook"
        QTVarios.WDialogo.__init__(self, manager.main_window, titulo, icono,
                                   extparam)

        # Se lee la lista de libros1
        self.list_books = Books.ListBooks()
        self.fvar = manager.configuration.file_books
        self.list_books.restore_pickle(self.fvar)

        # Comprobamos que todos esten accesibles
        self.list_books.check()
        self.book = self.list_books.porDefecto()

        # fens
        fenActivo = manager.fenActivoConInicio()  # Posicion en el board
        fenUltimo = manager.last_fen()
        self.siEnviar = siEnVivo and (fenActivo == fenUltimo)

        self.listaMoves = ListaMoves(None, self.book, fenActivo)

        self.infoMove = InfoMove(manager.board.is_white_bottom, fenActivo)

        self.wmoves = WMoves(self, self.siEnviar)

        self.splitter = splitter = QtWidgets.QSplitter(self)
        splitter.addWidget(self.infoMove)
        splitter.addWidget(self.wmoves)

        ly = Colocacion.H().control(splitter).margen(0)

        self.setLayout(ly)

        self.wmoves.tree.setFocus()

        anchoBoard = self.infoMove.board.width()

        self.resize(600 - 278 + anchoBoard, anchoBoard + 30)
        self.splitter.setSizes([296 - 278 + anchoBoard, 290])
        for col, ancho in enumerate((100, 59, 87, 0, 38)):
            self.wmoves.tree.setColumnWidth(col, ancho)

        self.ponTitulo(self.book)
Ejemplo n.º 8
0
    def __init__(self, procesador):

        QTVarios.WDialogo.__init__(
            self, procesador.main_window, _("Expeditions to the Everest"), Iconos.Trekking(), "everestBase"
        )

        self.procesador = procesador
        self.configuracion = procesador.configuracion

        self.db = Everest.Expeditions(self.configuracion)

        self.selected = None

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("NAME", _("Expedition"), 120, centered=True)
        o_columns.nueva("DATE_INIT", _("Start date"), 120, centered=True)
        o_columns.nueva("DATE_END", _("Final date"), 100, centered=True)
        o_columns.nueva("NUM_GAMES", _("Games"), 80, centered=True)
        o_columns.nueva("TIMES", _("Time"), 120, centered=True)
        o_columns.nueva("TOLERANCE", _("Tolerance"), 90, centered=True)
        o_columns.nueva("TRIES", _("Tries"), 90, centered=True)
        self.grid = Grid.Grid(self, o_columns, siSelecFilas=True, siSeleccionMultiple=True)
        self.grid.setMinimumWidth(self.grid.anchoColumnas() + 20)

        li_acciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            (_("Start"), Iconos.Empezar(), self.start),
            None,
            (_("New"), Iconos.Nuevo(), self.nuevo),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        )
        self.tb = QTVarios.LCTB(self, li_acciones)

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.grid).margen(3)

        self.setLayout(ly)

        self.register_grid(self.grid)
        self.restore_video(siTam=False)

        self.grid.gotop()
Ejemplo n.º 9
0
    def __init__(self, parent):
        QtGui.QDialog.__init__(self, parent)
        self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint)

        self.setWindowTitle(_("PGN file"))
        self.setWindowIcon(Iconos.PGN())
        self.fontB = f = Controles.TipoLetra(puntos=10, peso=75)

        self.siCancelado = False

        lbRotLeidos = Controles.LB(self, _("Games read") + ":").ponFuente(f)
        self.lbLeidos = Controles.LB(self, "0").ponFuente(f)

        lbRotErroneos = Controles.LB(self, _("Erroneous") + ":").ponFuente(f)
        self.lbErroneos = Controles.LB(self, "0").ponFuente(f)

        self.lbRotDuplicados = Controles.LB(self,
                                            _("Duplicated") + ":").ponFuente(f)
        self.lbDuplicados = Controles.LB(self, "0").ponFuente(f)

        lbRotImportados = Controles.LB(self, _("Imported") + ":").ponFuente(f)
        self.lbImportados = Controles.LB(self, "0").ponFuente(f)

        self.btCancelarSeguir = Controles.PB(self,
                                             _("Cancel"),
                                             self.cancelar,
                                             plano=False).ponIcono(
                                                 Iconos.Delete())

        # Tiempo
        ly = Colocacion.G().margen(20)
        ly.controld(lbRotLeidos, 0, 0).controld(self.lbLeidos, 0, 1)
        ly.controld(lbRotErroneos, 1, 0).controld(self.lbErroneos, 1, 1)
        ly.controld(self.lbRotDuplicados, 2,
                    0).controld(self.lbDuplicados, 2, 1)
        ly.controld(lbRotImportados, 3, 0).controld(self.lbImportados, 3, 1)

        lyBT = Colocacion.H().relleno().control(self.btCancelarSeguir)

        layout = Colocacion.V()
        layout.otro(ly)
        layout.espacio(20)
        layout.otro(lyBT)

        self.setLayout(layout)
Ejemplo n.º 10
0
    def __init__(self, procesador):

        QTVarios.WDialogo.__init__(self, procesador.pantalla, _("Determine your calculating power"), Iconos.Potencia(),
                                   "potenciaBase")

        self.procesador = procesador
        self.configuracion = procesador.configuracion

        self.historico = PotenciaHistorico(self.configuracion.ficheroPotencia)

        self.motor, self.segundos, self.min_min, self.min_max = self.leeParametros()

        # Historico
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("REF", _("N."), 35, siCentrado=True)
        oColumnas.nueva("FECHA", _("Date"), 120, siCentrado=True)
        oColumnas.nueva("SCORE", _("Score"), 100, siCentrado=True)
        oColumnas.nueva("MOTOR", _("Engine"), 120, siCentrado=True)
        oColumnas.nueva("SEGUNDOS", _("Second(s)"), 80, siCentrado=True)
        oColumnas.nueva("MIN_MIN", _("Minimum minutes"), 90, siCentrado=True)
        oColumnas.nueva("MIN_MAX", _("Maximum minutes"), 90, siCentrado=True)
        self.ghistorico = Grid.Grid(self, oColumnas, siSelecFilas=True, siSeleccionMultiple=True)
        self.ghistorico.setMinimumWidth(self.ghistorico.anchoColumnas() + 20)

        # Tool bar
        liAcciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar), None,
            (_("Start"), Iconos.Empezar(), self.empezar),
            (_("Remove"), Iconos.Borrar(), self.borrar), None,
            (_("Configuration"), Iconos.Opciones(), self.configurar), None,
            (_("Repeat"), Iconos.Pelicula_Repetir(), self.repetir), None,
        )
        self.tb = Controles.TBrutina(self, liAcciones)
        # self.ponToolBar([self.terminar, self.empezar, self.repetir, self.configurar, self.borrar])

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.ghistorico).margen(3)

        self.setLayout(ly)

        self.registrarGrid(self.ghistorico)
        self.recuperarVideo(siTam=False)

        self.ghistorico.gotop()
Ejemplo n.º 11
0
    def __init__(self, owner, listaOpeningsStd, dic_data):
        icono = Iconos.Opening()
        titulo = _("Learn openings by repetition")
        extparam = "opentrainingE"
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, extparam)

        name = dic_data.get("NOMBRE", "")
        self.listaOpeningsStd = listaOpeningsStd
        self.liBloques = self.leeBloques(dic_data.get("LISTA", []))

        # Toolbar
        li_acciones = [
            (_("Accept"), Iconos.Aceptar(), self.aceptar),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.cancelar),
            None,
            (_("Add"), Iconos.Nuevo(), self.nueva),
            None,
            (_("Modify"), Iconos.Modificar(), self.modificar),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        ]
        tb = Controles.TBrutina(self, li_acciones)

        lbNombre = Controles.LB(self, _("Name") + ": ")
        self.edNombre = Controles.ED(self, name)

        lyNombre = Colocacion.H().control(lbNombre).control(self.edNombre)

        # Lista
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("NOMBRE", _("Name"), 240)
        o_columns.nueva("PGN", _("Moves"), 360)

        self.grid = Grid.Grid(self, o_columns, siSelecFilas=True)
        n = self.grid.anchoColumnas()
        self.grid.setMinimumWidth(n + 20)
        self.register_grid(self.grid)
        self.grid.gotop()

        layout = Colocacion.V().control(tb).otro(lyNombre).control(self.grid)

        self.setLayout(layout)
        self.restore_video()
    def __init__(self, side, rutina):
        QtGui.QWidget.__init__(self)

        self.dispatch = rutina
        self.side = side
        self.setFont(Controles.TipoLetra())

        ancho = 54

        bt_all = Controles.PB(self, _("All"), self.run_all,
                              plano=False).anchoFijo(ancho + 16)
        bt_e4 = Controles.PB(self, "e4", self.run_e4,
                             plano=False).anchoFijo(ancho)
        bt_d4 = Controles.PB(self, "d4", self.run_d4,
                             plano=False).anchoFijo(ancho)
        bt_c4 = Controles.PB(self, "c4", self.run_c4,
                             plano=False).anchoFijo(ancho)
        bt_nf3 = Controles.PB(self, "Nf3", self.run_nf3,
                              plano=False).anchoFijo(ancho)
        bt_other = Controles.PB(self, _("Others"), self.run_other,
                                plano=False).anchoFijo(ancho + 16)

        ply1 = Controles.PB(self, _("%d ply") % 1, self.run_p1,
                            plano=False).anchoFijo(ancho)
        ply2 = Controles.PB(self, _("%d ply") % 2, self.run_p2,
                            plano=False).anchoFijo(ancho)
        ply3 = Controles.PB(self, _("%d ply") % 3, self.run_p3,
                            plano=False).anchoFijo(ancho)
        ply4 = Controles.PB(self, _("%d ply") % 4, self.run_p4,
                            plano=False).anchoFijo(ancho)
        ply5 = Controles.PB(self, _("%d ply") % 5, self.run_p5,
                            plano=False).anchoFijo(ancho)

        self.sbply = Controles.SB(self, 0, 0, 100)
        self.sbply.capturaCambiado(self.run_p)
        lbply = Controles.LB(self, _("Plies"))

        layout = Colocacion.H().relleno(1).control(bt_all)
        layout.control(bt_e4).control(bt_d4).control(bt_c4).control(
            bt_nf3).control(bt_other).relleno(1)
        layout.control(ply1).control(ply2).control(ply3).control(ply4).control(
            ply5)
        layout.control(lbply).control(self.sbply).relleno(1).margen(0)

        self.setLayout(layout)
Ejemplo n.º 13
0
    def __init__(self, owner, um):
        super(WMuestra, self).__init__(owner)

        self.um = um
        self.owner = owner

        self.etiquetaMotor = um.etiquetaMotor()
        self.etiquetaTiempo = um.etiquetaTiempo()

        self.tablero = owner.tablero

        self.lbMotorM = Controles.LB(self, self.etiquetaMotor).alinCentrado().ponTipoLetra(puntos=9, peso=75)
        self.lbTiempoM = Controles.LB(self, self.etiquetaTiempo).alinCentrado().ponTipoLetra(puntos=9, peso=75)
        self.dicFonts = {True: "blue", False: "grey"}

        self.btCancelar = Controles.PB(self, "", self.cancelar).ponIcono(Iconos.X())

        self.lbPuntuacion = owner.lbPuntuacion
        self.lbMotor = owner.lbMotor
        self.lbTiempo = owner.lbTiempo
        self.lbPGN = owner.lbPGN

        self.listaRM = um.listaRM
        self.siTiempoActivo = False

        self.colorNegativo = QTUtil.qtColorRGB(255, 0, 0)
        self.colorImpares = QTUtil.qtColorRGB(231, 244, 254)
        oColumnas = Columnas.ListaColumnas()
        self.siFigurinesPGN = VarGen.configuracion.figurinesPGN
        oColumnas.nueva("JUGADAS", "%d %s" % (len(self.listaRM), _("Moves")), 120, siCentrado=True,
                        edicion=Delegados.EtiquetaPGN(um.jg.siBlancas() if self.siFigurinesPGN else None))
        self.wrm = Grid.Grid(self, oColumnas, siLineas=False)

        self.wrm.tipoLetra(puntos=VarGen.configuracion.puntosPGN)
        nAncho = self.wrm.anchoColumnas() + 20
        self.wrm.setFixedWidth(nAncho)
        self.wrm.goto(self.um.posElegida, 0)

        # Layout
        ly2 = Colocacion.H().relleno().control(self.lbTiempoM).relleno().control(self.btCancelar)
        layout = Colocacion.V().control(self.lbMotorM).otro(ly2).control(self.wrm)

        self.setLayout(layout)

        self.wrm.setFocus()
Ejemplo n.º 14
0
    def __init__(self, maxdigits):
        QtWidgets.QWidget.__init__(self)

        f = Controles.TipoLetra("", 11, 80, False, False, False, None)

        ly = Colocacion.H()
        self.liLB = []
        for x in range(maxdigits):
            lb = QtWidgets.QLabel(self)
            lb.setStyleSheet(
                "* { border: 2px solid black; padding: 2px; margin: 0px;}")
            lb.setFont(f)
            ly.control(lb)
            self.liLB.append(lb)
            lb.hide()
            lb.setFixedWidth(32)
            lb.setAlignment(QtCore.Qt.AlignCenter)
        self.setLayout(ly)
Ejemplo n.º 15
0
def lyBotonesMovimiento(owner, clave, siLibre=True, siMas=False, siTiempo=True, \
                        siGrabar=False, siGrabarTodos=False, siJugar=False, rutina=None, tamIcon=16,
                        liMasAcciones=None):
    liAcciones = []

    def x(tit, tr, icono):
        liAcciones.append((tr, icono, clave + tit))

    # liAcciones.append( None )
    x("MoverInicio", _("First move"), Iconos.MoverInicio())
    liAcciones.append(None)
    x("MoverAtras", _("Previous move"), Iconos.MoverAtras())
    liAcciones.append(None)
    x("MoverAdelante", _("Next move"), Iconos.MoverAdelante())
    liAcciones.append(None)
    x("MoverFinal", _("Last move"), Iconos.MoverFinal())
    liAcciones.append(None)
    if siLibre:
        x("MoverLibre", _("Analysis of variant"), Iconos.MoverLibre())
        liAcciones.append(None)
    if siJugar:
        x("MoverJugar", _("Play"), Iconos.MoverJugar())
        liAcciones.append(None)
    if siTiempo:
        x("MoverTiempo", _("Timed movement"), Iconos.MoverTiempo())
    liAcciones.append(None)
    if siGrabar:
        x("MoverGrabar", _("Save"), Iconos.MoverGrabar())
        liAcciones.append(None)
    if siGrabarTodos:
        liAcciones.append((_("Save") + "++", Iconos.MoverGrabarTodos(),
                           clave + "MoverGrabarTodos"))
        liAcciones.append(None)
    if siMas:
        x("MoverMas", _("New analysis"), Iconos.MoverMas())

    if liMasAcciones:
        for trad, tit, icono in liMasAcciones:
            liAcciones.append(None)
            liAcciones.append((trad, icono, clave + tit))

    tb = Controles.TB(owner, liAcciones, False, tamIcon=tamIcon, rutina=rutina)
    ly = Colocacion.H().relleno().control(tb).relleno()
    return ly, tb
Ejemplo n.º 16
0
    def __init__(self, owner, procesador):

        title = _("In one line")
        titulo = _("Turn on the lights") + ": " + title
        extparam = "tolconfoneline"
        icono = Iconos.TOLchange()
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, extparam)

        self.tol = TurnOnLights.read_oneline_tol()
        self.procesador = procesador

        lbNumPos = Controles.LB2P(self, _("Number of positions"))
        liBlocks = [(str(x), x) for x in range(6, 60, 6)]
        self.cbNumPos = Controles.CB(self, liBlocks, self.tol.num_pos)

        lbtipo = Controles.LB2P(self, _("Mode"))
        liTipos = [(_("Calculation mode"), True), (_("Memory mode"), False)]
        self.cbTipo = Controles.CB(self, liTipos, self.tol.calculation_mode)

        lbfile = Controles.LB2P(self, _("File"))
        pbfile = Controles.PB(self, "", self.newfile).ponIcono(Iconos.Buscar())
        self.lbshowfile = Controles.LB(self, self.tol.fns)
        lyfile = Colocacion.H().control(pbfile).control(
            self.lbshowfile).relleno(1)

        self.chbauto = Controles.CHB(self, _("Redo each day automatically"),
                                     self.tol.auto_day)

        tb = Controles.TBrutina(self)
        tb.new(_("Accept"), Iconos.Aceptar(), self.aceptar)
        tb.new(_("Cancel"), Iconos.Cancelar(), self.cancelar)

        # Colocamos ---------------------------------------------------------------
        ly = Colocacion.G()
        ly.controld(lbNumPos, 1, 0).control(self.cbNumPos, 1, 1)
        ly.controld(lbtipo, 2, 0).control(self.cbTipo, 2, 1)
        ly.controld(lbfile, 3, 0).otro(lyfile, 3, 1)
        ly.control(self.chbauto, 4, 0, 1, 2)

        layout = Colocacion.V().control(tb).espacio(10).otro(ly)

        self.setLayout(layout)

        self.recuperarVideo(siTam=True)
Ejemplo n.º 17
0
    def __init__(self, owner, test, procesador, titulo, icono):

        QTVarios.WDialogo.__init__(self, owner, titulo, icono, "horses")

        self.historico = owner.historico
        self.procesador = owner.procesador
        self.configuracion = self.procesador.configuracion

        self.test = test

        # Tablero
        confTablero = self.configuracion.confTablero("HORSES", 48)

        self.tablero = Tablero.Tablero(self, confTablero)
        self.tablero.crea()
        self.tablero.ponMensajero(self.mueveHumano)

        # Rotulo tiempo
        self.lbInformacion = Controles.LB(self, _("Goal: to capture the king up to the square a8")).alinCentrado()
        self.lbMoves = Controles.LB(self, "")

        # Tool bar
        liAcciones = (
            (_("Cancel"), Iconos.Cancelar(), "cancelar"),
            (_("Reinit"), Iconos.Reiniciar(), "reiniciar"),
            (_("Help"), Iconos.AyudaGR(), "ayuda"),
        )
        self.tb = Controles.TB(self, liAcciones)

        # Layout
        lyInfo = Colocacion.H().control(self.lbInformacion).relleno().control(self.lbMoves)
        lyT = Colocacion.V().relleno().control(self.tablero).otro(lyInfo).relleno().margen(10)

        ly = Colocacion.V().control(self.tb).otro(lyT).relleno().margen(0)

        self.setLayout(ly)

        self.recuperarVideo()
        self.adjustSize()

        liTB = ["cancelar", "reiniciar", "ayuda"]
        self.ponToolBar(liTB)

        self.reset()
Ejemplo n.º 18
0
    def __init__(self, panelOpening, procesador, configuracion):
        QtGui.QWidget.__init__(self)

        self.panelOpening = panelOpening
        self.dbop = panelOpening.dbop

        self.procesador = procesador
        self.configuracion = configuracion
        self.partida = None
        self.njg = None

        self.tabengine = TabEngine(self, procesador, configuracion)
        self.liTabs = [
            ("engine", self.tabengine),
        ]
        self.tabActive = 0

        self.tabs = Controles.Tab(panelOpening)
        self.tabs.ponTipoLetra(puntos=self.configuracion.puntosPGN)
        self.tabs.nuevaTab(self.tabengine, _("Engine"))
        self.tabs.setTabIcon(0, Iconos.Motor())
        self.tabs.dispatchChange(self.tabChanged)

        tabButton = QtGui.QToolButton(self)
        tabButton.setIcon(Iconos.Nuevo())
        tabButton.clicked.connect(self.creaTab)
        li = [(_("Analysis of next move"), True),
              (_("Analysis of current move"), False)]
        self.cb_nextmove = Controles.CB(self, li, True).capturaCambiado(
            self.changedNextMove)

        corner_widget = QtGui.QWidget(self)
        lyCorner = Colocacion.H().control(
            self.cb_nextmove).control(tabButton).margen(0)
        corner_widget.setLayout(lyCorner)

        self.tabs.setCornerWidget(corner_widget)
        self.tabs.setTabsClosable(True)
        self.tabs.tabCloseRequested.connect(self.tabCloseRequested)

        layout = Colocacion.V()
        layout.control(self.tabs).margen(0)
        self.setLayout(layout)
Ejemplo n.º 19
0
    def __init__(self,
                 wParent,
                 titulo,
                 hasta,
                 etiqueta=None,
                 pos=None,
                 mensAdicional=None):
        super(WNumEntrenamiento, self).__init__(wParent)

        self.setWindowTitle(titulo)
        self.setWindowIcon(Iconos.Datos())

        tb = QTUtil2.tbAcceptCancel(self)

        if pos is None:
            pos = 1  # random.randint( 1, hasta )

        if etiqueta is None:
            etiqueta = _("Training unit")

        self.ed, lb = QTUtil2.spinBoxLB(self,
                                        pos,
                                        1,
                                        hasta,
                                        etiqueta=etiqueta,
                                        maxTam=60)
        lb1 = Controles.LB(self, "/ %d" % hasta)

        if mensAdicional:
            lb2 = Controles.LB(self, mensAdicional)
            lb2.ponWrap().anchoMinimo(250)

        lyH = Colocacion.H().relleno().control(lb).control(
            self.ed).control(lb1).relleno().margen(15)

        lyV = Colocacion.V().control(tb).otro(lyH)
        if mensAdicional:
            lyV.control(lb2)
        lyV.margen(3)

        self.setLayout(lyV)

        self.resultado = None
Ejemplo n.º 20
0
    def __init__(self, file_tournament, file_work):
        QtWidgets.QWidget.__init__(self)

        Code.list_engine_managers = EngineManager.ListEngineManagers()
        self.torneo = TournamentRun(
            file_tournament)  # Tournament.Tournament(file_tournament)
        self.file_work = file_work
        self.db_work = UtilSQL.ListSQL(file_work)

        self.slow_pieces = self.torneo.slow_pieces()

        self.setWindowTitle(
            "%s - %s %d" %
            (self.torneo.name(), _("Worker"), int(file_work[-5:])))
        self.setWindowIcon(Iconos.Torneos())

        # Toolbar
        self.tb = Controles.TBrutina(self, icon_size=24)

        # Board
        conf_board = Code.configuration.config_board("TOURNEYPLAY", 36)
        self.board = Board.Board(self, conf_board)
        self.board.crea()
        Delegados.generaPM(self.board.piezas)

        # PGN
        self.configuration = Code.configuration
        self.game = Game.Game()
        self.pgn = ControlPGN.ControlPGN(self)
        ly_pgn = self.crea_bloque_informacion()

        self.is_closed = False
        self.state = None
        self.current_side = WHITE

        ly_tt = Colocacion.V().control(self.tb).control(self.board)

        layout = Colocacion.H().otro(ly_tt).otro(ly_pgn).relleno().margen(3)
        self.setLayout(layout)

        self.cpu = CPU.CPU(self)

        self.pon_estado(ST_WAITING)
Ejemplo n.º 21
0
    def __init__(self, owner, conj_piezas, siBlancas, posicion):
        QtGui.QWidget.__init__(self)

        self.owner = owner
        self.wm = WEdMove(self, conj_piezas, siBlancas)
        self.ms = Controles.LB(self, "")
        self.an = Controles.PB(self, "?", self.analizarUno, plano=False).anchoFijo(18)
        self.cancelar = Controles.LB(self, "").ponImagen(Iconos.pmCancelarPeque())
        self.aceptar = Controles.LB(self, "").ponImagen(Iconos.pmAceptarPeque())
        ly = Colocacion.H().control(self.aceptar).control(self.cancelar).control(self.wm).control(self.an).control(
                self.ms).relleno().margen(0)
        self.setLayout(ly)

        self.ms.hide()
        self.an.hide()
        self.aceptar.hide()
        self.cancelar.hide()

        self.posicion = posicion
Ejemplo n.º 22
0
    def __init__(self, wParent, txtcategoria, maxNivel):
        super(WDatos, self).__init__(wParent)

        self.setWindowTitle(_("Check your memory on a chessboard"))
        self.setWindowIcon(Iconos.Memoria())
        self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint)

        tb = QTUtil2.tbAcceptCancel(self)

        f = Controles.TipoLetra(puntos=12, peso=75)

        self.ed, lb = QTUtil2.spinBoxLB(self, maxNivel, 1, maxNivel, etiqueta=txtcategoria + " " + _("Level"), maxTam=40)
        lb.ponFuente(f)

        ly = Colocacion.H().control(lb).control(self.ed).margen(20)

        layout = Colocacion.V().control(tb).otro(ly).margen(3)

        self.setLayout(layout)
Ejemplo n.º 23
0
    def __init__(self, owner, titulo, wav=None, maxTime=None, nombre=None):

        # titulo = _("Sound edition" )
        icono = Iconos.S_Play()
        extparam = "sound"
        super().__init__(parent=owner,
                         titulo=titulo,
                         icono=icono,
                         extparam=extparam)

        self.confich = VarGen.configuracion.ficheroDirSound

        # toolbar
        self.tb = QtWidgets.QToolBar("BASICO", self)
        self.tb.setIconSize(QtCore.QSize(32, 32))
        self.tb.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon)
        self.preparaTB()

        # Nombre
        siNombre = nombre is not None
        if siNombre:
            lbNom = Controles.LB(self, _("Name") + ":")
            self.edNom = Controles.ED(self, nombre).anchoMinimo(180)
            lyNom = Colocacion.H().control(lbNom).control(self.edNom).relleno()

        # MesaSonido
        self.mesa = MesaSonido(self)
        self.taller = Sonido.TallerSonido(wav)

        self.mesa.ponCentesimas(self.taller.centesimas)

        self.maxTime = maxTime if maxTime else 300.0  # segundos=5 minutos

        layout = Colocacion.V().control(self.tb)
        if siNombre:
            layout.otro(lyNom)
        layout.control(self.mesa).margen(3)

        self.setLayout(layout)

        self.ponBaseTB()

        self.recuperarVideo(siTam=False)
Ejemplo n.º 24
0
    def __init__(self, owner, partida):

        titulo = _("Choose moves")
        icono = Iconos.Camara()
        extparam = "tabvpart"
        super().__init__(parent=owner, titulo=titulo, icono=icono, extparam=extparam)

        self.owner = owner
        self.partida = partida
        self.siEmpiezaConNegras = partida.siEmpiezaConNegras
        siTodos = True
        self.liElegidos = [siTodos] * len(partida)

        liAcciones = [(_("Accept"), Iconos.Aceptar(), "aceptar"), None,
                      (_("Cancel"), Iconos.Cancelar(), "reject"), None,
                      (_("Mark"), Iconos.Marcar(), "marcar"), None,
                      ]
        tb = Controles.TB(self, liAcciones)

        # Tablero
        confTablero = VarGen.configuracion.confTablero("ELIGEMOVS", 24)
        self.tablero = Tablero.Tablero(self, confTablero, siDirector=False)
        self.tablero.crea()
        self.tablero.desactivaTodas()

        # Pgn
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("ELEGIDO", "", 30, siCentrado=True, siChecked=True)
        oColumnas.nueva("NUMERO", _("N."), 35, siCentrado=True)
        oColumnas.nueva("BLANCAS", _("White"), 100, siCentrado=True)
        oColumnas.nueva("NEGRAS", _("Black"), 100, siCentrado=True)
        self.pgn = Grid.Grid(self, oColumnas, siCabeceraMovible=False, siSelecFilas=True)
        nAnchoPgn = self.pgn.anchoColumnas() + 20
        self.pgn.setMinimumWidth(nAnchoPgn)
        self.pgn.gotop()

        ly = Colocacion.H().control(self.tablero).control(self.pgn)

        layout = Colocacion.V().control(tb).otro(ly)
        self.setLayout(layout)
        self.pgn.setFocus()

        self.resultado = []
Ejemplo n.º 25
0
    def __init__(self, procesador, test, titulo, tabla, icono):

        QTVarios.WDialogo.__init__(self, procesador.main_window, titulo, icono, "horsesBase")

        self.procesador = procesador
        self.configuration = procesador.configuration
        self.tabla = tabla
        self.icono = icono
        self.test = test
        self.titulo = titulo

        self.historico = HorsesHistorico(self.configuration.ficheroHorses, tabla)

        # Historico
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("FECHA", _("Date"), 120, centered=True)
        o_columns.nueva("MOVES", _("Moves"), 100, centered=True)
        o_columns.nueva("SECONDS", _("Second(s)"), 80, centered=True)
        o_columns.nueva("HINTS", _("Hints"), 90, centered=True)
        self.ghistorico = Grid.Grid(self, o_columns, siSelecFilas=True, siSeleccionMultiple=True)
        self.ghistorico.setMinimumWidth(self.ghistorico.anchoColumnas() + 20)

        # Tool bar
        li_acciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            (_("Start"), Iconos.Empezar(), self.empezar),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        )
        self.tb = Controles.TBrutina(self, li_acciones)

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.ghistorico).margen(3)

        self.setLayout(ly)

        self.register_grid(self.ghistorico)
        self.restore_video(siTam=False)

        self.ghistorico.gotop()
Ejemplo n.º 26
0
    def __init__(self, owner, test, procesador, titulo, icono):

        QTVarios.WDialogo.__init__(self, owner, titulo, icono, "horses")

        self.historico = owner.historico
        self.procesador = owner.procesador
        self.configuration = self.procesador.configuration

        self.test = test

        # Board
        config_board = self.configuration.config_board("HORSES", 48)

        self.board = Board.Board(self, config_board)
        self.board.crea()
        self.board.set_dispatcher(self.player_has_moved)

        # Rotulo vtime
        self.lbInformacion = Controles.LB(self, _("Goal: to capture the king up to the square a8")).align_center()
        self.lbMoves = Controles.LB(self, "")

        # Tool bar
        li_acciones = (
            (_("Cancel"), Iconos.Cancelar(), self.cancelar),
            None,
            (_("Reinit"), Iconos.Reiniciar(), self.reiniciar),
            None,
            (_("Help"), Iconos.AyudaGR(), self.ayuda),
        )
        self.tb = Controles.TBrutina(self, li_acciones)

        # Layout
        lyInfo = Colocacion.H().control(self.lbInformacion).relleno().control(self.lbMoves)
        lyT = Colocacion.V().relleno().control(self.board).otro(lyInfo).relleno().margen(10)

        ly = Colocacion.V().control(self.tb).otro(lyT).relleno().margen(0)

        self.setLayout(ly)

        self.restore_video()
        self.adjustSize()

        self.reset()
Ejemplo n.º 27
0
    def __init__(self, owner):
        self.owner = owner
        configuration = Code.configuration
        self.with_figurines = configuration.x_pgn_withfigurines
        puntos = configuration.x_pgn_fontpoints

        QtWidgets.QWidget.__init__(self, self.owner)

        li_acciones = (
            None,
            (_("Append"), Iconos.Mas(), self.tb_mas_variation),
            None,
            ("%s+%s" % (_("Append"), _("Engine")), Iconos.MasR(),
             self.tb_mas_variation_r),
            None,
            (_("Edit in other board"), Iconos.EditVariation(),
             self.tb_edit_variation),
            None,
            (_("Remove"), Iconos.Borrar(), self.tb_remove_variation),
            None,
        )
        tb_variations = Controles.TBrutina(self,
                                           li_acciones,
                                           with_text=False,
                                           icon_size=16)

        self.em = ShowPGN.ShowPGN(self, puntos, self.with_figurines)
        self.em.set_link(self.link_variation_pressed)
        self.em.set_edit(self.link_variation_edit)

        f = Controles.TipoLetra(puntos=puntos, peso=750)

        lb_variations = Controles.LB(self.owner, _("Variations")).ponFuente(f)

        ly_head = Colocacion.H().control(lb_variations).relleno().control(
            tb_variations)

        layout = Colocacion.V().otro(ly_head).control(self.em).margen(0)
        self.setLayout(layout)

        self.move = None
        self.selected_link = None
Ejemplo n.º 28
0
    def __init__(self, procesador, nivel):

        titulo = "%s. %s %d" % (_("Moves between two positions"), _("Level"), nivel)
        QTVarios.WDialogo.__init__(self, procesador.pantalla, titulo, Iconos.Puente(), "puenteBase")

        self.procesador = procesador
        self.configuracion = procesador.configuracion
        self.nivel = nivel

        self.historico = PuenteHistorico(self.configuracion.ficheroPuente, nivel)

        self.colorMejorFondo = QTUtil.qtColorRGB(150, 104, 145)
        self.colorBien = QTUtil.qtColorRGB(0, 0, 255)
        self.colorMal = QTUtil.qtColorRGB(255, 72, 72)
        self.colorMejor = QTUtil.qtColorRGB(255, 255, 255)

        # Historico
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("FECHA", _("Date"), 120, siCentrado=True)
        oColumnas.nueva("SEGUNDOS", _("Second(s)"), 120, siCentrado=True)
        self.ghistorico = Grid.Grid(self, oColumnas, siSelecFilas=True, siSeleccionMultiple=True)
        self.ghistorico.setMinimumWidth(self.ghistorico.anchoColumnas() + 20)

        # Tool bar
        liAcciones = (
            (_("Close"), Iconos.MainMenu(), "terminar"), None,
            (_("Start"), Iconos.Empezar(), "empezar"),
            (_("Remove"), Iconos.Borrar(), "borrar"), None,
        )
        self.tb = Controles.TB(self, liAcciones)
        self.ponToolBar("terminar", "empezar", "borrar")

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.ghistorico).margen(3)

        self.setLayout(ly)

        self.registrarGrid(self.ghistorico)
        self.recuperarVideo(siTam=False)

        self.ghistorico.gotop()
Ejemplo n.º 29
0
    def creaRestoControles(self):
        liAcciones = (
            (_("Quit"), Iconos.Kibitzer_Terminar(), self.terminar),
            (_("Continue"), Iconos.Kibitzer_Continuar(), self.play),
            (_("Pause"), Iconos.Kibitzer_Pausa(), self.pause),
            (_("Analyze only color"), Iconos.P_16c(), self.color),
            (_("Change window position"), Iconos.TamTablero(), self.mover),
        )
        self.tb = Controles.TBrutina(self, liAcciones, siTexto=False, tamIcon=16)
        self.tb.setFixedSize(120, 24)
        self.tb.setPosVisible(1, False)
        self.em = EDP(self)
        self.em.ponTipoLetra(peso=75, puntos=10)
        self.em.setReadOnly(True)

        layout = Colocacion.H().control(self.em).control(self.tb).margen(2)

        self.setLayout(layout)

        self.lanzaMotor(False)
Ejemplo n.º 30
0
    def __init__(self, main_window, tactica, icono):

        QTVarios.WDialogo.__init__(self, main_window, tactica.title, icono, "histoTacticas")

        self.li_histo = tactica.historico()
        self.tactica = tactica
        self.resultado = None

        # Historico
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("REFERENCE", _("Reference"), 120, centered=True)
        o_columns.nueva("FINICIAL", _("Start date"), 120, centered=True)
        o_columns.nueva("FFINAL", _("End date"), 120, centered=True)
        o_columns.nueva("TIME", "%s - %s:%s" % (_("Days"), _("Hours"), _("Minutes")), 120, centered=True)
        o_columns.nueva("POSICIONES", _("Num. puzzles"), 100, centered=True)
        o_columns.nueva("SECONDS", _("Working time"), 100, centered=True)
        o_columns.nueva("ERRORS", _("Errors"), 100, centered=True)
        self.ghistorico = Grid.Grid(self, o_columns, siSelecFilas=True, siSeleccionMultiple=True)
        self.ghistorico.setMinimumWidth(self.ghistorico.anchoColumnas() + 20)

        # Tool bar
        li_acciones = (
            (_("Close"), Iconos.MainMenu(), "terminar"),
            (_("Train"), Iconos.Empezar(), "entrenar"),
            (_("New"), Iconos.Nuevo(), "nuevo"),
            (_("Remove"), Iconos.Borrar(), "borrar"),
        )
        self.tb = Controles.TB(self, li_acciones)
        accion = "nuevo" if tactica.finished() else "entrenar"
        self.pon_toolbar("terminar", accion, "borrar")

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.ghistorico).margen(3)

        self.setLayout(ly)

        self.register_grid(self.ghistorico)
        self.restore_video(siTam=False)

        self.ghistorico.gotop()