Example #1
0
    def __init__(self, procesador, liPGN):
        titulo = _("Edit PGN labels")
        icono = Iconos.PGN()
        extparam = "editlabels"

        QTVarios.WDialogo.__init__(self, procesador.pantalla, titulo, icono, extparam)
        self.procesador = procesador
        self.creaLista(liPGN)

        # Toolbar
        liAccionesWork = (
            (_("Accept"), Iconos.Aceptar(), self.aceptar), None,
            (_("Cancel"), Iconos.Cancelar(), self.cancelar), None,
            (_("Up"), Iconos.Arriba(), self.arriba), None,
            (_("Down"), Iconos.Abajo(), self.abajo), None,
        )
        tbWork = Controles.TBrutina(self, liAccionesWork, tamIcon=24)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("ETIQUETA", _("Label"), 150, edicion=Delegados.LineaTextoUTF8())
        oColumnas.nueva("VALOR", _("Value"), 400, edicion=Delegados.LineaTextoUTF8())

        self.grid = Grid.Grid(self, oColumnas, siEditable=True)
        n = self.grid.anchoColumnas()
        self.grid.setFixedWidth(n + 20)
        self.registrarGrid(self.grid)

        # Layout
        layout = Colocacion.V().control(tbWork).control(self.grid).margen(3)
        self.setLayout(layout)

        self.recuperarVideo()
Example #2
0
    def __init__(self, procesador, liPGN, is_fen_possible):
        titulo = _("Edit PGN labels")
        icono = Iconos.PGN()
        extparam = "editlabels"
        self.listandard = STANDARD_TAGS
        self.is_fen_possible = is_fen_possible

        QTVarios.WDialogo.__init__(self, procesador.main_window, titulo, icono,
                                   extparam)
        self.procesador = procesador
        self.creaLista(liPGN)

        # Toolbar
        liAccionesWork = (
            (_("Accept"), Iconos.Aceptar(), self.aceptar),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.cancelar),
            None,
            (_("Up"), Iconos.Arriba(), self.arriba),
            None,
            (_("Down"), Iconos.Abajo(), self.abajo),
            None,
        )
        tbWork = QTVarios.LCTB(self, liAccionesWork, icon_size=24)

        # Lista
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("ETIQUETA",
                        _("Label"),
                        150,
                        edicion=Delegados.LineaTextoUTF8())
        o_columns.nueva("VALOR",
                        _("Value"),
                        400,
                        edicion=Delegados.LineaTextoUTF8())

        self.grid = Grid.Grid(self, o_columns, siEditable=True)
        n = self.grid.anchoColumnas()
        self.grid.setFixedWidth(n + 20)
        self.register_grid(self.grid)

        # Layout
        layout = Colocacion.V().control(tbWork).control(self.grid).margen(3)
        self.setLayout(layout)

        self.restore_video()
Example #3
0
    def __init__(self, procesador, liPGN):
        wParent = procesador.pantalla
        self.procesador = procesador
        self.creaLista(liPGN)

        super(WEtiquetasPGN, self).__init__(wParent)

        self.setWindowTitle(_("Edit PGN labels"))
        self.setWindowIcon(Iconos.PGN())
        self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint
                            | QtCore.Qt.WindowMinimizeButtonHint)

        # Toolbar
        liAccionesWork = (
            (_("Accept"), Iconos.Aceptar(), self.accept),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.reject),
            None,
            (_("Up"), Iconos.Arriba(), self.arriba),
            None,
            (_("Down"), Iconos.Abajo(), self.abajo),
            None,
        )
        tbWork = Controles.TBrutina(self, liAccionesWork, tamIcon=24)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("ETIQUETA",
                        _("Label"),
                        150,
                        edicion=Delegados.LineaTextoUTF8())
        oColumnas.nueva("VALOR",
                        _("Value"),
                        400,
                        edicion=Delegados.LineaTextoUTF8())

        self.grid = Grid.Grid(self, oColumnas, siEditable=True)
        n = self.grid.anchoColumnas()
        self.grid.setFixedWidth(n + 20)

        # Layout
        layout = Colocacion.V().control(tbWork).control(self.grid).margen(3)
        self.setLayout(layout)
    def __init__(self, procesador, dic_data):
        entrenamientos = procesador.entrenamientos
        entrenamientos.check()
        self.entrenamientos = entrenamientos
        self.procesador = procesador
        self.li_favoritos = self.procesador.configuration.get_favoritos()
        self.dic_data = dic_data

        QTVarios.WDialogo.__init__(self, self.procesador.main_window,
                                   _("Shortcuts"), Iconos.Atajos(), "atajos")

        li_acciones = [
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            ("+" + _("Play"), Iconos.Libre(), self.masplay),
            ("+" + _("Train"), Iconos.Entrenamiento(), self.masentrenamiento),
            ("+" + _("Compete"), Iconos.NuevaPartida(), self.mascompete),
            ("+" + _("Tools"), Iconos.Tools(), self.mastools),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
            (_("Up"), Iconos.Arriba(), self.arriba),
            (_("Down"), Iconos.Abajo(), self.abajo),
            None,
        ]
        tb = Controles.TBrutina(
            self, li_acciones, puntos=procesador.configuration.x_tb_fontpoints)

        # Lista
        o_columnas = Columnas.ListaColumnas()
        o_columnas.nueva("KEY", _("Key"), 80, centered=True)
        o_columnas.nueva("OPCION", _("Option"), 300)
        o_columnas.nueva("LABEL",
                         _("Label"),
                         300,
                         edicion=Delegados.LineaTextoUTF8(siPassword=False))

        self.grid = Grid.Grid(self,
                              o_columnas,
                              siSelecFilas=True,
                              siEditable=True)
        self.grid.setMinimumWidth(self.grid.anchoColumnas() + 20)
        f = Controles.TipoLetra(puntos=10, peso=75)
        self.grid.ponFuente(f)

        # Layout
        layout = Colocacion.V().control(tb).control(
            self.grid).relleno().margen(3)
        self.setLayout(layout)

        self.restore_video(siTam=True)

        self.grid.gotop()
Example #5
0
    def __init__(self, procesador, dicDatos):
        entrenamientos = procesador.entrenamientos
        entrenamientos.comprueba()
        self.entrenamientos = entrenamientos
        self.procesador = procesador
        self.liFavoritos = self.procesador.configuracion.liFavoritos
        self.dicDatos = dicDatos

        QTVarios.WDialogo.__init__(self, self.procesador.pantalla,
                                   _("Shortcuts"), Iconos.Atajos(), "atajos")

        liAcciones = [
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            ("+" + _("Play"), Iconos.Libre(), self.masplay),
            ("+" + _("Train"), Iconos.Entrenamiento(), self.masentrenamiento),
            ("+" + _("Compete"), Iconos.NuevaPartida(), self.mascompete),
            ("+" + _("Tools"), Iconos.Tools(), self.mastools),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
            (_("Up"), Iconos.Arriba(), self.arriba),
            (_("Down"), Iconos.Abajo(), self.abajo),
            None,
        ]
        tb = Controles.TBrutina(self,
                                liAcciones,
                                puntos=procesador.configuracion.puntosTB)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("OPCION", _("Option"), 300)
        oColumnas.nueva("LABEL",
                        _("Label"),
                        300,
                        edicion=Delegados.LineaTextoUTF8(siPassword=False))

        self.grid = Grid.Grid(self,
                              oColumnas,
                              siSelecFilas=True,
                              siEditable=True)
        self.grid.setMinimumWidth(self.grid.anchoColumnas() + 20)
        f = Controles.TipoLetra(puntos=10, peso=75)
        self.grid.setFont(f)

        # Layout
        layout = Colocacion.V().control(tb).control(
            self.grid).relleno().margen(3)
        self.setLayout(layout)

        self.recuperarVideo(siTam=True)

        self.grid.gotop()
Example #6
0
    def __init__(self, procesador):

        self.configuracion = procesador.configuracion

        self.leeUsuarios()

        titulo = _("Users")
        icono = Iconos.Usuarios()
        extparam = "users"
        QTVarios.WDialogo.__init__(self, procesador.pantalla, titulo, icono, extparam)

        # Toolbar
        liAcciones = (  ( _("Accept"), Iconos.Aceptar(), "aceptar" ), None,
                        ( _("Cancel"), Iconos.Cancelar(), "cancelar" ), None,
                        ( _("New"), Iconos.Nuevo(), "nuevo" ), None,
                        ( _("Remove"), Iconos.Borrar(), "borrar" ), None,
        )
        tb = Controles.TB(self, liAcciones)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("NUMERO", _("N."), 40, siCentrado=True)
        oColumnas.nueva("USUARIO", _("User"), 140, edicion=Delegados.LineaTextoUTF8())
        oColumnas.nueva("PASSWORD", _("Password"), 100, edicion=Delegados.LineaTextoUTF8(siPassword=True))

        self.grid = Grid.Grid(self, oColumnas, siEditable=True)

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).margen(3)
        self.setLayout(layout)

        self.grid.gotop()
        self.grid.setFocus()

        self.siPlay = False

        self.registrarGrid(self.grid)

        if not self.recuperarVideo():
            self.resize(310, 400)
Example #7
0
    def __init__(self, owner, dbgames: [DBgames.DBgames]):
        QTVarios.WDialogo.__init__(self, owner, _("Tags"), Iconos.Tags(), "tagsedition")
        self.dbgames = dbgames
        self.dic_cambios = None

        dcabs = dbgames.recuperaConfig("dcabs", {})
        li_basetags = dbgames.li_tags()
        if li_basetags[0] == "PLYCOUNT":
            del li_basetags[0]

        self.li_data = []
        for tag in li_basetags:
            dic = {
                "KEY": tag,
                "LABEL": dcabs.get(tag, Util.primera_mayuscula(tag)),
                "ACTION": "-",
                "VALUE": "",
                "NEW": False,
            }
            dic["PREV_LABEL"] = dic["KEY"]
            self.li_data.append(dic)

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("KEY", _("Key"), 80, centered=True)
        o_columns.nueva("LABEL", _("PGN Label"), 80, centered=True, edicion=Delegados.LineaTexto(rx="[A-Za-z_0-9]*"))

        self.fill_column = _("Fill column with value")
        self.remove_column = _("Remove column")
        self.nothing = "-"
        self.li_actions = [self.nothing, self.fill_column, self.remove_column]
        o_columns.nueva("ACTION", _("Action"), 80, centered=True, edicion=Delegados.ComboBox(self.li_actions))
        o_columns.nueva("VALUE", self.fill_column, 200, edicion=Delegados.LineaTextoUTF8())
        self.gtags = Grid.Grid(self, o_columns, siEditable=True)

        li_acciones = (
            (_("Save"), Iconos.Aceptar(), self.aceptar),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.reject),
            None,
            (_("New"), Iconos.Nuevo(), self.new),
            None,
        )
        tb = QTVarios.LCTB(self, li_acciones)

        ly = Colocacion.V().control(tb).control(self.gtags).margen(4)

        self.setLayout(ly)

        self.register_grid(self.gtags)
        self.restore_video(anchoDefecto=self.gtags.anchoColumnas() + 20, altoDefecto=400)

        self.gtags.gotop()
Example #8
0
    def __init__(self, procesador):

        self.configuracion = procesador.configuracion

        self.leeUsuarios()

        titulo = _("Usuarios")
        icono = Iconos.Usuarios()
        extparam = "users"
        QTVarios.WDialogo.__init__(self, procesador.main_window, titulo, icono,
                                   extparam)

        # Toolbar
        li_acciones = (
            (_("Accept"), Iconos.Aceptar(), self.aceptar),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.cancelar),
            None,
            (_("New"), Iconos.Nuevo(), self.nuevo),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        )
        tb = QTVarios.LCTB(self, li_acciones)

        # Lista
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("NUMERO", _("N."), 40, centered=True)
        o_columns.nueva("USUARIO",
                        _("User"),
                        140,
                        edicion=Delegados.LineaTextoUTF8())
        # o_columns.nueva("PASSWORD", _("Password"), 100, edicion=Delegados.LineaTextoUTF8(siPassword=True))

        self.grid = Grid.Grid(self, o_columns, siEditable=True)

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).margen(3)
        self.setLayout(layout)

        self.grid.gotop()
        self.grid.setFocus()

        self.siPlay = False

        self.register_grid(self.grid)

        if not self.restore_video():
            self.resize(310, 400)
Example #9
0
    def __init__(self, procesador):

        icono = Iconos.ManualSave()
        extparam = "manualsave"
        titulo = _("Save positions to FNS/PGN")
        QTVarios.WDialogo.__init__(self, procesador.pantalla, titulo, icono, extparam)

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

        self.posicion = ControlPosicion.ControlPosicion()
        self.posicion.posInicial()

        self.gestor_motor = None
        self.pgn = None
        self.fns = None

        self.li_labels = [
            ["Site", ""],
            ["Event", ""],
            ["Date", ""],
            ["White", ""],
            ["Black", ""],
            ["WhiteElo", ""],
            ["BlackElo", ""],
            ["Result", ""],
        ]
        self.li_labels.extend([["", ""] for x in range(10)])

        self.li_analysis = []
        self.analyzing = False

        self.partida = None

        # Toolbar
        liAcciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar), None,
            (_("External engines"), Iconos.Motores(), self.ext_engines), None,
        )
        tb = QTVarios.LCTB(self, liAcciones)

        # Board + botones + solucion + boton salvado
        ##
        bt_change_position = Controles.PB(self, "   " + _("Change position"), self.change_position, plano=False)
        bt_change_position.ponIcono(Iconos.Datos(), 24)
        ##
        conf_tablero = self.configuracion.confTablero("MANUALSAVE", 32)
        self.tablero = Tablero.Tablero(self, conf_tablero)
        self.tablero.crea()
        self.tablero.ponerPiezasAbajo(True)
        ##
        lybt, bt = QTVarios.lyBotonesMovimiento(self, "", siLibre=False, tamIcon=24, siTiempo=False)
        ##
        self.em_solucion = Controles.EM(self, siHTML=False).altoMinimo(40).capturaCambios(self.reset_partida)
        ##
        self.bt_solucion = Controles.PB(self, "   " + _("Save solution"), self.savesolucion, plano=False).ponIcono(Iconos.Grabar(), 24)
        self.bt_editar = Controles.PB(self, "   " + _("Edit"), self.editar_solucion, plano=False).ponIcono(Iconos.PlayGame())
        ly = Colocacion.V().control(self.em_solucion).control(self.bt_editar)
        gb = Controles.GB(self, _("Solution"), ly)
        ###
        lybtp = Colocacion.H().control(bt_change_position).espacio(20).control(self.bt_solucion)
        lyT = Colocacion.V().otro(lybtp).control(self.tablero).otro(lybt).control(gb)
        gb_left = Controles.GB(self, "", lyT)

        # Ficheros PGN + FNS
        lb_pgn = Controles.LB(self, _("PGN") + ": ")
        self.bt_pgn = Controles.PB(self, "", self.pgn_select, plano=False).anchoMinimo(300)
        bt_no_pgn = Controles.PB(self, "", self.pgn_unselect).ponIcono(Iconos.Delete()).anchoFijo(16)
        lb_fns = Controles.LB(self, _("FNS") + ": ")
        self.bt_fns = Controles.PB(self, "", self.fns_select, plano=False).anchoMinimo(300)
        bt_no_fns = Controles.PB(self, "", self.fns_unselect).ponIcono(Iconos.Delete()).anchoFijo(16)
        ## Codec
        lb_codec = Controles.LB(self, _("Encoding") + ": ")
        liCodecs = [k for k in set(v for k, v in encodings.aliases.aliases.iteritems())]
        liCodecs.sort()
        liCodecs = [(k, k) for k in liCodecs]
        liCodecs.insert(0, ("%s: %s" % (_("By default"), _("UTF-8")), "default"))
        self.codec = "default"
        self.cb_codecs = Controles.CB(self, liCodecs, self.codec)
        ###
        ly0 = Colocacion.G().control(lb_pgn, 0, 0).control(self.bt_pgn, 0, 1).control(bt_no_pgn, 0, 2)
        ly0.control(lb_fns, 1, 0).control(self.bt_fns, 1, 1).control(bt_no_fns, 1, 2)
        ly1 = Colocacion.H().control(lb_codec).control(self.cb_codecs).relleno(1)
        ly = Colocacion.V().otro(ly0).otro(ly1)
        gb_files = Controles.GB(self, _("File to save"), ly)

        # Labels + correlativo
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("LABEL", _("Label"), 80, edicion=Delegados.LineaTextoUTF8(), siCentrado=True)
        oColumnas.nueva("VALUE", _("Value"), 280, edicion=Delegados.LineaTextoUTF8())
        self.grid_labels = Grid.Grid(self, oColumnas, siEditable=True, xid=1)
        n = self.grid_labels.anchoColumnas()
        self.grid_labels.setFixedWidth(n + 20)
        self.registrarGrid(self.grid_labels)

        ##
        lb_number = Controles.LB(self, _("Correlative number")+": ")
        self.sb_number = Controles.SB(self, 0, 0, 99999999).tamMaximo(50)
        lb_number_help = Controles.LB(self, _("Replace symbol # in Value column (#=3, ###=003)"))
        lb_number_help.setWordWrap(True)

        ly_number = Colocacion.H().control(lb_number).control(self.sb_number).control(lb_number_help, 4)

        ly = Colocacion.V().control(self.grid_labels).otro(ly_number)
        gb_labels = Controles.GB(self, _("PGN labels"), ly)

        # Analysis + grid + start/stop + multiPV
        self.bt_start = Controles.PB(self, "", self.start).ponIcono(Iconos.Pelicula_Seguir(), 32)
        self.bt_stop = Controles.PB(self, "", self.stop).ponIcono(Iconos.Pelicula_Pausa(), 32)
        self.bt_stop.hide()

        lb_engine = Controles.LB(self, _("Engine") + ":")
        liMotores = self.configuracion.comboMotoresCompleto()
        self.cb_engine = Controles.CB(self, liMotores, self.configuracion.tutor.clave).capturaCambiado(self.reset_motor)

        lb_multipv = Controles.LB(self, _("Multi PV")+": ")
        self.sb_multipv = Controles.SB(self, 1, 1, 500).tamMaximo(50)
        ##
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("PDT", _("Evaluation"), 100, siCentrado=True)
        oColumnas.nueva("PGN", _("Solution"), 360)
        self.grid_analysis = Grid.Grid(self, oColumnas, siSelecFilas=True)
        self.registrarGrid(self.grid_analysis)
        ##
        lb_analysis_help = Controles.LB(self, _("Double click to send analysis line to solution"))
        ###
        ly_lin1 = Colocacion.H().control(self.bt_start).control(self.bt_stop).control(lb_engine).control(self.cb_engine)
        ly_lin1.relleno(1).control(lb_multipv).control(self.sb_multipv)
        ly = Colocacion.V().otro(ly_lin1).control(self.grid_analysis).control(lb_analysis_help)
        gb_analysis = Controles.GB(self, _("Analysis"), ly)

        # ZONA
        splitter_right = QtGui.QSplitter(self)
        splitter_right.setOrientation(QtCore.Qt.Vertical)
        splitter_right.addWidget(gb_files)
        splitter_right.addWidget(gb_labels)
        splitter_right.addWidget(gb_analysis)

        self.registrarSplitter(splitter_right, "RIGHT")
        ##
        splitter = QtGui.QSplitter(self)
        splitter.addWidget(gb_left)
        splitter.addWidget(splitter_right)

        self.registrarSplitter(splitter, "ALL")

        layout = Colocacion.V().control(tb).control(splitter).margen(5)

        self.setLayout(layout)

        self.inicializa()
Example #10
0
    def __init__(self, owner, game, configuracion):
        titulo = _("Save to PGN")
        icono = Iconos.PGN()
        extparam = "savepgn"
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, extparam)

        self.game = game
        self.game.order_tags()
        self.body = self.game.pgnBase()
        self.li_labels = self.game.li_tags
        self.configuracion = configuracion
        self.file = ""
        self.vars_read()

        # Opciones
        li_options = [
            (_("Save"), Iconos.GrabarFichero(), self.save),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.terminar),
            None,
            (_("Clipboard"), Iconos.Clipboard(), self.portapapeles),
            None,
            (_("Reinit"), Iconos.Reiniciar(), self.reinit),
            None,
        ]
        tb = QTVarios.LCTB(self, li_options)

        tabs = Controles.Tab(self)

        # Tab-fichero -----------------------------------------------------------------------------------------------
        lb_file = Controles.LB(self, _("File to save") + ": ")
        bt_history = Controles.PB(self, "", self.history).ponIcono(
            Iconos.Favoritos(), 24).ponToolTip(_("Previous"))
        bt_boxrooms = (Controles.PB(self, "", self.boxrooms).ponIcono(
            Iconos.BoxRooms(), 24).ponToolTip(_("Boxrooms PGN")))
        self.bt_file = Controles.PB(self, "", self.file_select,
                                    plano=False).anchoMinimo(300)

        # Codec
        lb_codec = Controles.LB(self, _("Encoding") + ": ")
        liCodecs = [
            k for k in set(v for k, v in encodings.aliases.aliases.items())
        ]
        liCodecs.sort()
        liCodecs = [(k, k) for k in liCodecs]
        liCodecs.insert(0, (_("Same as file"), "file"))
        liCodecs.insert(0,
                        ("%s: %s" % (_("By default"), _("UTF-8")), "default"))
        self.cb_codecs = Controles.CB(self, liCodecs, self.codec)

        # Rest
        self.chb_overwrite = Controles.CHB(self, _("Overwrite"), False)
        self.chb_remove_c_v = Controles.CHB(
            self, _("Remove comments and variations"), self.remove_c_v)

        lyF = Colocacion.H().control(lb_file).control(
            self.bt_file).control(bt_history).control(bt_boxrooms).relleno(1)
        lyC = Colocacion.H().control(lb_codec).control(
            self.cb_codecs).relleno(1)
        ly = (Colocacion.V().espacio(15).otro(lyF).otro(lyC).control(
            self.chb_overwrite).control(self.chb_remove_c_v).relleno(1))
        w = QtWidgets.QWidget()
        w.setLayout(ly)
        tabs.nuevaTab(w, _("File"))
        self.chb_overwrite.hide()

        # Tab-labels -----------------------------------------------------------------------------------------------
        liAccionesWork = (
            ("", Iconos.Mas22(), self.labels_more),
            None,
            ("", Iconos.Menos22(), self.labels_less),
            None,
            ("", Iconos.Arriba(), self.labels_up),
            None,
            ("", Iconos.Abajo(), self.labels_down),
            None,
        )
        tb_labels = Controles.TBrutina(self,
                                       liAccionesWork,
                                       tamIcon=16,
                                       siTexto=False)

        # Lista
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("ETIQUETA",
                        _("Label"),
                        150,
                        edicion=Delegados.LineaTextoUTF8())
        o_columns.nueva("VALOR",
                        _("Value"),
                        400,
                        edicion=Delegados.LineaTextoUTF8())

        self.grid_labels = Grid.Grid(self, o_columns, siEditable=True)
        n = self.grid_labels.anchoColumnas()
        self.grid_labels.setFixedWidth(n + 20)

        # Layout
        ly = Colocacion.V().control(tb_labels).control(
            self.grid_labels).margen(3)
        w = QtWidgets.QWidget()
        w.setLayout(ly)
        tabs.nuevaTab(w, _("Labels"))

        # Tab-Body -----------------------------------------------------------------------------------------------
        self.em_body = Controles.EM(self, self.body, siHTML=False)
        tabs.nuevaTab(self.em_body, _("Body"))

        layout = Colocacion.V().control(tb).control(tabs)

        self.setLayout(layout)

        if self.history_list:
            fich = self.history_list[0]
            if os.path.isfile(fich):
                self.file = fich
                self.show_file()

        self.register_grid(self.grid_labels)
        self.restore_video()
    def __init__(self, owner, tablero):
        self.owner = owner
        self.posicion = tablero.ultPosicion
        self.tablero = tablero
        self.configuracion = tablero.configuracion
        self.fenM2 = self.posicion.fenM2()
        self.origin_new = None

        self.leeRecursos()

        titulo = _("Director")
        icono = Iconos.Script()
        extparam = "tabvisualscript"
        QTVarios.WDialogo.__init__(self, tablero, titulo, icono, extparam)

        self.siGrabar = False
        self.ant_foto = None

        self.guion = TabVisual.Guion(tablero, self)

        # Guion
        liAcciones = [(_("Close"), Iconos.MainMenu(), self.terminar),
                      (_("Cancel"), Iconos.Cancelar(), self.cancelar),
                      (_("Save"), Iconos.Grabar(), self.grabar),
                      (_("New"), Iconos.Nuevo(), self.gnuevo),
                      (_("Insert"), Iconos.Insertar(), self.ginsertar),
                      (_("Remove"), Iconos.Borrar(), self.gborrar), None,
                      (_("Up"), Iconos.Arriba(), self.garriba),
                      (_("Down"), Iconos.Abajo(), self.gabajo), None,
                      (_("Mark"), Iconos.Marcar(), self.gmarcar), None,
                      (_("File"), Iconos.Recuperar(), self.gfile), None]
        self.tb = Controles.TBrutina(self,
                                     liAcciones,
                                     siTexto=False,
                                     tamIcon=24)
        self.tb.setAccionVisible(self.grabar, False)
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("NUMERO", _("N."), 20, siCentrado=True)
        oColumnas.nueva("MARCADO", "", 20, siCentrado=True, siChecked=True)
        oColumnas.nueva("TIPO", _("Type"), 50, siCentrado=True)
        oColumnas.nueva("NOMBRE",
                        _("Name"),
                        100,
                        siCentrado=True,
                        edicion=Delegados.LineaTextoUTF8())
        oColumnas.nueva("INFO", _("Information"), 100, siCentrado=True)
        self.g_guion = Grid.Grid(self,
                                 oColumnas,
                                 siCabeceraMovible=False,
                                 siEditable=True,
                                 siSeleccionMultiple=True)
        self.g_guion.fixMinWidth()

        self.registrarGrid(self.g_guion)

        # Visuales
        self.selectBanda = PantallaTab.SelectBanda(self)

        lySG = Colocacion.H().control(self.selectBanda).control(self.g_guion)
        layout = Colocacion.V().control(self.tb).otro(lySG).margen(3)
        self.setLayout(layout)

        self.recuperarVideo()

        self.recuperar()
        self.ant_foto = self.foto()

        self.actualizaBandas()
        li = self.dbConfig["SELECTBANDA"]
        if li:
            self.selectBanda.recuperar(li)
        num_lb = self.dbConfig["SELECTBANDANUM"]
        if num_lb is not None:
            self.selectBanda.seleccionarNum(num_lb)

        self.ultDesde = "d4"
        self.ultHasta = "e5"

        self.g_guion.gotop()
Example #12
0
    def __init__(self, tableroOwner):

        self.leeRecursos()

        self.tableroOwner = tableroOwner
        titulo = _("Director")
        icono = Iconos.Director()
        extparam = "tabdirector"
        QTVarios.WDialogo.__init__(self, tableroOwner, titulo, icono, extparam)

        liAcciones = [
            (_("Quit"), Iconos.MainMenu(), self.terminar),
            None,
            (_("Arrows"), Iconos.Flechas(), self.flechas),
            None,
            (_("Boxes"), Iconos.Marcos(), self.marcos),
            None,
            (_("Images"), Iconos.SVGs(), self.svgs),
            None,
            (_("Markers"), Iconos.Markers(), self.markers),
            None,
            None,
            (_("Clipboard"), Iconos.Clip(), self.portapapeles),
            None,
            (_("Save") + " png", Iconos.GrabarFichero(), self.grabarFichero),
            None,
        ]
        tb = Controles.TBrutina(self, liAcciones, siTexto=False, tamIcon=32)

        pbLimpia = Controles.PB(self,
                                _("Clean main board"),
                                self.limpiaTableroOwner,
                                plano=False)
        self.siTabCoord = self.dbConfig["COORDINADOS"]
        if self.siTabCoord is None:
            self.siTabCoord = self.dbConfig["COORDINADOS"] = True
        self.chTabCoord = Controles.CHB(self, _("Boards coordinated"),
                                        self.siTabCoord)
        self.chTabCoord.capturaCambiado(self, self.cambiadoTabCoord)
        pbCoordina = Controles.PB(self, "", self.coordinaTableros).ponIcono(
            Iconos.Coordina()).anchoFijo(30)

        # Tablero
        confTablero = VarGen.configuracion.confTablero(
            "Director", 24, padre=tableroOwner.confTablero.id())
        self.tablero = Tablero.TableroDirector(self, confTablero)
        self.tablero.crea()
        self.tablero.ponDispatchEventos(self.dispatch)
        self.tablero.dispatchSize(self.tableroCambiadoTam)
        self.tablero.baseCasillasSC.setAcceptDrops(True)
        self.tablero.ponMensajero(self.muevePieza)

        self.tablero.activaTodas()

        self.guion = TabVisual.Guion()
        self.nomGuion = ""

        # Tools
        listaPiezas = QTVarios.ListaPiezas(self,
                                           "P,N,B,R,Q,K,p,n,b,r,q,k",
                                           self.tablero,
                                           18,
                                           margen=0)

        # Guion
        liAcciones = [
            (_("New"), Iconos.Nuevo(), self.gnuevo),
            (_("Insert"), Iconos.Insertar(), self.ginsertar),
            (_("Copy"), Iconos.Copiar(), self.gcopiar), None,
            (_("Remove"), Iconos.Borrar(), self.gborrar), None,
            (_("Up"), Iconos.Arriba(), self.garriba),
            (_("Down"), Iconos.Abajo(), self.gabajo), None,
            (_("Mark"), Iconos.Marcar(), self.gmarcar), None,
            (_("Save"), Iconos.Grabar(), self.ggrabarGuion),
            (_("Open"), Iconos.Recuperar(), self.grecuperarGuion), None,
            (_("Remove script"), Iconos.Delete(), self.geliminarGuion)
        ]
        tbGuion = Controles.TBrutina(self,
                                     liAcciones,
                                     siTexto=False,
                                     tamIcon=20)
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("DIRECTOR", "0", 20, siCentrado=True, siChecked=True)
        oColumnas.nueva("MARCADO", "1", 20, siCentrado=True, siChecked=True)
        oColumnas.nueva("TIPO", _("Type"), 50, siCentrado=True)
        oColumnas.nueva("NOMBRE",
                        _("Name"),
                        100,
                        siCentrado=True,
                        edicion=Delegados.LineaTextoUTF8())
        oColumnas.nueva("INFO", _("Information"), 100, siCentrado=True)
        self.g_guion = Grid.Grid(self,
                                 oColumnas,
                                 siCabeceraMovible=False,
                                 siEditable=True,
                                 siSeleccionMultiple=True)
        self.g_guion.gotop()
        self.g_guion.setSizePolicy(QtGui.QSizePolicy.Expanding,
                                   QtGui.QSizePolicy.Expanding)

        self.registrarGrid(self.g_guion)

        # Visuales
        self.dragBanda = QTVarios.DragBanda(self, (5, 5), 32, margen=0)

        # Botones
        lyLC = Colocacion.H().control(pbLimpia).control(pbCoordina).control(
            self.chTabCoord)

        lyTB = Colocacion.V()
        lyTB.controlc(self.dragBanda)
        lyTB.control(self.tablero)
        lyTB.control(listaPiezas)
        lyTB.otro(lyLC)
        lyTB.control(tbGuion)
        lyTB.control(self.g_guion)
        lyTB.margen(0)

        # Layout
        layout = Colocacion.V().control(tb).otro(lyTB).margen(3)
        self.setLayout(layout)

        self.recuperarVideo()

        self.actualizaBandas()
        li = self.dbConfig["DRAGBANDA"]
        if li:
            self.dragBanda.recuperar(li)

        self.ultDesde = "d4"
        self.ultHasta = "e5"

        self.compruebaTabCoord()

        self.tablero.setFocus()

        self.importaOtroTablero()
Example #13
0
    def __init__(self, owner, board):
        self.owner = owner
        self.position = board.last_position
        self.board = board
        self.configuration = board.configuration
        self.fenm2 = self.position.fenm2()
        self.origin_new = None

        self.dbManager = board.dbVisual
        self.leeRecursos()

        titulo = _("Director")
        icono = Iconos.Script()
        extparam = "tabvisualscript"
        QTVarios.WDialogo.__init__(self, board, titulo, icono, extparam)

        self.must_save = False
        self.ant_foto = None

        self.guion = TabVisual.Guion(board, self)

        # Guion
        li_acciones = [
            (_("Close"), Iconos.MainMenu(), self.terminar),
            (_("Cancel"), Iconos.Cancelar(), self.cancelar),
            (_("Save"), Iconos.Grabar(), self.grabar),
            (_("New"), Iconos.Nuevo(), self.gnuevo),
            (_("Insert"), Iconos.Insertar(), self.ginsertar),
            (_("Remove"), Iconos.Borrar(), self.gborrar),
            None,
            (_("Up"), Iconos.Arriba(), self.garriba),
            (_("Down"), Iconos.Abajo(), self.gabajo),
            None,
            (_("Mark"), Iconos.Marcar(), self.gmarcar),
            None,
            (_("File"), Iconos.Recuperar(), self.gfile),
            None,
        ]
        self.tb = Controles.TBrutina(self,
                                     li_acciones,
                                     with_text=False,
                                     icon_size=24)
        self.tb.setAccionVisible(self.grabar, False)

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("NUMBER", _("N."), 20, centered=True)
        o_columns.nueva("MARCADO", "", 20, centered=True, siChecked=True)
        o_columns.nueva("TYPE", _("Type"), 50, centered=True)
        o_columns.nueva("NOMBRE",
                        _("Name"),
                        100,
                        centered=True,
                        edicion=Delegados.LineaTextoUTF8())
        o_columns.nueva("INFO", _("Information"), 100, centered=True)
        self.g_guion = Grid.Grid(self,
                                 o_columns,
                                 siCabeceraMovible=False,
                                 siEditable=True,
                                 siSeleccionMultiple=True)
        self.g_guion.fixMinWidth()

        self.register_grid(self.g_guion)

        self.chbSaveWhenFinished = Controles.CHB(
            self, _("Save when finished"),
            self.dbConfig.get("SAVEWHENFINISHED", False))

        # Visuales
        self.selectBanda = WindowTab.SelectBanda(self)

        lyG = Colocacion.V().control(self.g_guion).control(
            self.chbSaveWhenFinished)
        lySG = Colocacion.H().control(self.selectBanda).otro(lyG).relleno(1)
        layout = Colocacion.V().control(self.tb).otro(lySG).margen(3)

        self.setLayout(layout)

        self.restore_video()

        self.recuperar()
        self.ant_foto = self.foto()

        self.actualizaBandas()
        li = self.dbConfig["SELECTBANDA"]
        if li:
            self.selectBanda.recuperar(li)
        num_lb = self.dbConfig["SELECTBANDANUM"]
        if num_lb is not None:
            self.selectBanda.seleccionarNum(num_lb)

        self.ultDesde = "d4"
        self.ultHasta = "e5"

        self.g_guion.gotop()
Example #14
0
    def __init__(self, tableroOwner):

        self.tableroOwner = tableroOwner
        titulo = _("Board -> Image")
        icono = Iconos.Camara()
        extparam = "tabvisual"
        QTVarios.WDialogo.__init__(self, tableroOwner, titulo, icono, extparam)

        liAcciones = [( _("Quit"), Iconos.MainMenu(), "terminar" ), None,
                      ( _("Clipboard"), Iconos.Clip(), "portapapeles" ), None,
                      ( _("Save") + " png", Iconos.GrabarFichero(), "grabarFichero" ), None,
                      ( _("Arrows"), Iconos.Flechas(), "flechas" ), None,
                      ( _("Boxes"), Iconos.Marcos(), "marcos" ), None,
                      ( _("Images"), Iconos.SVGs(), "svgs" ), None,
                      # ( _( "Sounds" ), Iconos.S_LeerWav(), "sonidos" ), None,
        ]
        tb = Controles.TB(self, liAcciones)

        # Tablero
        idTab = "TABVISUAL"
        confTablero = VarGen.configuracion.confTablero(idTab, 24, padre=tableroOwner.confTablero.id())
        self.tablero = Tablero.TableroVisual(self, confTablero)
        self.tablero.crea()
        self.tablero.ponDispatchEventos(self.dispatch)
        self.tablero.dispatchSize(self.tableroCambiadoTam)
        self.tablero.baseCasillasSC.setAcceptDrops(True)
        self.tablero.ponMensajero(self.muevePieza)

        self.tablero.copiaPosicionDe(tableroOwner)
        self.fenInicial = self.tablero.fenActual()
        self.tablero.activaTodas()

        self.leeRecursos()
        self.leeGuion("", False)

        # Tools
        self.listaPiezasW = QTVarios.ListaPiezas(self, "P;N;B;R;Q;K", self.tablero, 32)
        self.listaPiezasB = QTVarios.ListaPiezas(self, "p;n;b;r;q;k", self.tablero, 32)

        # Guion
        liAcciones = [( _("New"), Iconos.Nuevo(), "gnuevo" ),
                      ( _("Insert"), Iconos.Insertar(), "ginsertar" ),
                      ( _("Copy"), Iconos.Copiar(), "gcopiar" ), None,
                      ( _("Remove"), Iconos.Borrar(), "gborrar" ), None,
                      ( _("Up"), Iconos.Arriba(), "garriba" ),
                      ( _("Down"), Iconos.Abajo(), "gabajo" ), None,
                      ( _("Mark"), Iconos.Marcar(), "gmarcar" ), None,
                      ( _("Save"), Iconos.Grabar(), "ggrabarGuion" ),
                      ( _("Open"), Iconos.Recuperar(), "grecuperarGuion" ), None,
                      ( _("Remove script"), Iconos.Delete(), "geliminarGuion" )
        ]
        tbGuion = Controles.TB(self, liAcciones, siTexto=False, tamIcon=20)
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("MARCADO", "", 20, siCentrado=True, siChecked=True)
        oColumnas.nueva("TIPO", _("Type"), 50, siCentrado=True)
        oColumnas.nueva("NOMBRE", _("Name"), 100, siCentrado=True, edicion=Delegados.LineaTextoUTF8())
        oColumnas.nueva("INFO", _("Information"), 100, siCentrado=True)
        self.g_guion = Grid.Grid(self, oColumnas, siCabeceraMovible=False, siEditable=True, siSeleccionMultiple=True)
        self.g_guion.gotop()

        self.registrarGrid(self.g_guion)

        # Visuales
        self.dragBandaArriba = QTVarios.DragBanda(self, (10,), 40)

        # Guion
        lyGuion = Colocacion.V().control(tbGuion).control(self.g_guion)

        # Zona tablero
        lyT = Colocacion.H()
        lyT.controli(self.listaPiezasW).controli(self.tablero).controli(self.listaPiezasB).otro(lyGuion)

        lyTB = Colocacion.V()
        lyTB.controli(self.dragBandaArriba)
        lyTB.otro(lyT)

        # Layout
        layout = Colocacion.V().control(tb).otro(lyTB).margen(3)
        self.setLayout(layout)

        self.recuperarVideo()

        self.actualizaBandas()
        li = self.dbConfig["DRAGBANDAARRIBA"]
        if li:
            self.dragBandaArriba.recuperar(li)

        self.ultDesde = "d4"
        self.ultHasta = "e5"

        self.g_guion.gotop()
        self.g_guion.setFocus()