Пример #1
0
    def editBanda(self, cid):
        li = cid.split("_")
        tp = li[1]
        xid = li[2]
        ok = False
        if tp == TabVisual.TP_FLECHA:
            regFlecha = BoardTypes.Flecha(dic=self.dbFlechas[xid])
            w = WindowTabVFlechas.WTV_Flecha(self, regFlecha, True)
            if w.exec_():
                self.dbFlechas[xid] = w.regFlecha.save_dic()
                ok = True
        elif tp == TabVisual.TP_MARCO:
            regMarco = BoardTypes.Marco(dic=self.dbMarcos[xid])
            w = WindowTabVMarcos.WTV_Marco(self, regMarco)
            if w.exec_():
                self.dbMarcos[xid] = w.regMarco.save_dic()
                ok = True
        elif tp == TabVisual.TP_SVG:
            regSVG = BoardTypes.SVG(dic=self.dbSVGs[xid])
            w = WindowTabVSVGs.WTV_SVG(self, regSVG)
            if w.exec_():
                self.dbSVGs[xid] = w.regSVG.save_dic()
                ok = True
        elif tp == TabVisual.TP_MARKER:
            regMarker = BoardTypes.Marker(dic=self.dbMarkers[xid])
            w = WindowTabVMarkers.WTV_Marker(self, regMarker)
            if w.exec_():
                self.dbMarkers[xid] = w.regMarker.save_dic()
                ok = True

        if ok:
            self.actualizaBandas()
            if len(self.guion):
                self.ponSiGrabar()
Пример #2
0
    def list_arrows(self):
        dic = self.dbFlechas.as_dictionary()
        li = []
        for k, dicFlecha in dic.items():
            arrow = BoardTypes.Flecha(dic=dicFlecha)
            arrow.id = k
            li.append(arrow)

        li.sort(key=lambda x: x.ordenVista)
        return li
Пример #3
0
 def flechaRivalDefecto(self):
     bf = BoardTypes.Flecha()
     bf.physical_pos.orden = ZVALUE_PIECE - 2
     bf.grosor = 1
     bf.altocabeza = 22
     bf.tipo = 1
     bf.destino = "m"
     bf.width_square = 36
     bf.color = 4281749760
     bf.colorinterior = 4289396480
     bf.colorinterior2 = -1
     bf.redondeos = False
     bf.forma = "3"
     bf.ancho = 5
     bf.vuelo = 4
     bf.descuelgue = 6
     return bf
Пример #4
0
 def flechaDefecto(self):
     bf = BoardTypes.Flecha()
     bf.grosor = 1
     bf.altocabeza = 20
     bf.tipo = 1
     bf.destino = "m"
     bf.width_square = 32
     bf.color = 4293848576
     bf.colorinterior = 4292532736
     bf.opacity = 0.8
     bf.redondeos = True
     bf.forma = "3"
     bf.ancho = 4
     bf.vuelo = 5
     bf.descuelgue = 6
     bf.physical_pos.orden = ZVALUE_PIECE - 1
     return bf
    def __init__(self, owner, list_arrows, dbFlechas):

        titulo = _("Arrows")
        icono = Iconos.Flechas()
        extparam = "flechas"
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, extparam)

        self.owner = owner

        flb = Controles.TipoLetra(puntos=8)

        self.configuration = Code.configuration

        self.dbFlechas = dbFlechas

        self.liPFlechas = owner.list_arrows()

        # Lista
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("NUMBER", _("N."), 60, centered=True)
        o_columns.nueva("NOMBRE", _("Name"), 256)

        self.grid = Grid.Grid(self, o_columns, xid="F", siSelecFilas=True)

        li_acciones = [
            (_("Close"), Iconos.MainMenu(), "terminar"),
            None,
            (_("New"), Iconos.Nuevo(), "mas"),
            None,
            (_("Remove"), Iconos.Borrar(), "borrar"),
            None,
            (_("Modify"), Iconos.Modificar(), "modificar"),
            None,
            (_("Copy"), Iconos.Copiar(), "copiar"),
            None,
            (_("Up"), Iconos.Arriba(), "arriba"),
            None,
            (_("Down"), Iconos.Abajo(), "abajo"),
            None,
        ]
        tb = Controles.TB(self, li_acciones)
        tb.setFont(flb)

        ly = Colocacion.V().control(tb).control(self.grid)

        # Board
        config_board = Code.configuration.config_board("EDIT_GRAPHICS", 48)
        self.board = Board.Board(self, config_board, siDirector=False)
        self.board.crea()
        self.board.copiaPosicionDe(owner.board)

        # Layout
        layout = Colocacion.H().otro(ly).control(self.board)
        self.setLayout(layout)

        self.register_grid(self.grid)
        self.restore_video()

        # Ejemplos
        liMovs = ["d2d6", "a8h8", "h5b7"]
        self.liEjemplos = []
        regFlecha = BoardTypes.Flecha()
        for a1h8 in liMovs:
            regFlecha.a1h8 = a1h8
            regFlecha.siMovible = True
            arrow = self.board.creaFlecha(regFlecha)
            self.liEjemplos.append(arrow)

        self.grid.gotop()
        self.grid.setFocus()
Пример #6
0
    def creaTareaBase(self, tp, xid, a1h8, row):
        # if tp != TabVisual.TP_FLECHA: # Se indica al terminar en porque puede que no se grabe
        # self.ponSiGrabar()
        tpid = tp, xid
        if tp == "P":
            tarea = TabVisual.GT_PiezaMueve(self.guion)
            from_sq, to_sq = a1h8[:2], a1h8[2:]
            borra = self.board.dameNomPiezaEn(to_sq)
            tarea.desdeHastaBorra(from_sq, to_sq, borra)
            self.board.enable_all()
        elif tp == "C":
            tarea = TabVisual.GT_PiezaCrea(self.guion)
            borra = self.board.dameNomPiezaEn(a1h8)
            tarea.from_sq(a1h8, borra)
            tarea.pieza(xid)
            self.board.enable_all()
        elif tp == "B":
            tarea = TabVisual.GT_PiezaBorra(self.guion)
            tarea.from_sq(a1h8)
            tarea.pieza(xid)
        else:
            xid = str(xid)
            if tp == TabVisual.TP_FLECHA:
                dicFlecha = self.dbFlechas[xid]
                if dicFlecha is None:
                    return None, None
                regFlecha = BoardTypes.Flecha()
                regFlecha.restore_dic(dicFlecha)
                regFlecha.tpid = tpid
                regFlecha.a1h8 = a1h8
                sc = self.board.creaFlecha(regFlecha)
                tarea = TabVisual.GT_Flecha(self.guion)
            elif tp == TabVisual.TP_MARCO:
                dicMarco = self.dbMarcos[xid]
                if dicMarco is None:
                    return None, None
                regMarco = BoardTypes.Marco()
                regMarco.restore_dic(dicMarco)
                regMarco.tpid = tpid
                regMarco.a1h8 = a1h8
                sc = self.board.creaMarco(regMarco)
                tarea = TabVisual.GT_Marco(self.guion)
            elif tp == TabVisual.TP_SVG:
                dicSVG = self.dbSVGs[xid]
                if dicSVG is None:
                    return None, None
                regSVG = BoardTypes.SVG()
                regSVG.restore_dic(dicSVG)
                regSVG.tpid = tpid
                regSVG.a1h8 = a1h8
                sc = self.board.creaSVG(regSVG, siEditando=True)
                tarea = TabVisual.GT_SVG(self.guion)
            elif tp == TabVisual.TP_MARKER:
                dicMarker = self.dbMarkers[xid]
                if dicMarker is None:
                    return None, None
                regMarker = BoardTypes.Marker()
                regMarker.restore_dic(dicMarker)
                regMarker.tpid = tpid
                regMarker.a1h8 = a1h8
                sc = self.board.creaMarker(regMarker, siEditando=True)
                tarea = TabVisual.GT_Marker(self.guion)
            sc.ponRutinaPulsada(None, tarea.id())
            tarea.itemSC(sc)

        tarea.marcado(True)
        tarea.registro((tp, xid, a1h8))
        row = self.guion.nuevaTarea(tarea, row)

        return tarea, row