示例#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()
 def tiempoSC(x, y, linea, minim, maxim, rutina, color):
     tt = BoardTypes.Texto()
     tt.tipoLetra = BoardTypes.TipoLetra("Courier New", 10)
     tt.physical_pos.ancho = 68
     tt.physical_pos.alto = 12
     tt.physical_pos.orden = 5
     tt.colorFondo = color
     tt.valor = "00:00:00"
     tt.physical_pos.x = x
     tt.physical_pos.y = y
     tt.linea = linea
     tt.min = x + minim
     tt.max = x + maxim
     tt.rutina = rutina
     sc = BoardElements.TiempoSC(self.escena, tt)
     sc.ponCentesimas(0)
     return sc
示例#3
0
 def list_markers(self):
     dic = self.dbMarkers.as_dictionary()
     li = []
     for k, dic_marker in dic.items():
         marker = BoardTypes.Marker(dic=dic_marker)
         marker.id = k
         li.append(marker)
     li.sort(key=lambda x: x.ordenVista)
     return li
示例#4
0
 def list_boxes(self):
     dic = self.dbMarcos.as_dictionary()
     li = []
     for k, dicMarco in dic.items():
         box = BoardTypes.Marco(dic=dicMarco)
         box.id = k
         li.append(box)
     li.sort(key=lambda x: x.ordenVista)
     return li
 def list_svgs(self):
     dic = self.dbSVGs.as_dictionary()
     li = []
     for k, dicSVG in dic.items():
         svg = BoardTypes.SVG(dic=dicSVG)
         svg.id = k
         li.append(svg)
     li.sort(key=lambda x: x.ordenVista)
     return li
示例#6
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
 def writePizarra(self, tarea):
     if self.pizarra is None:
         self.pizarra = BoardTypes.Pizarra(
             self,
             self.board,
             self.anchoPizarra,
             edit_mode=self.winDirector is not None,
             with_continue=tarea.continuar(),
         )
         self.pizarra.mensaje.setFocus()
     self.pizarra.write(tarea)
     self.pizarra.show()
 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
 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()
    def crea(self):
        # base
        cajon = BoardTypes.Caja()
        cajon.physical_pos.orden = 1
        cajon.colorRelleno = 4294243572
        ancho, alto = 544, 100
        cajon.physical_pos.ancho, cajon.physical_pos.alto = ancho, alto
        cajon.physical_pos.x, cajon.physical_pos.y = 0, 0
        cajon.tipo = QtCore.Qt.NoPen

        self.cajonSC = BoardElements.CajaSC(self.escena, cajon)

        def tiempoSC(x, y, linea, minim, maxim, rutina, color):
            tt = BoardTypes.Texto()
            tt.tipoLetra = BoardTypes.TipoLetra("Courier New", 10)
            tt.physical_pos.ancho = 68
            tt.physical_pos.alto = 12
            tt.physical_pos.orden = 5
            tt.colorFondo = color
            tt.valor = "00:00:00"
            tt.physical_pos.x = x
            tt.physical_pos.y = y
            tt.linea = linea
            tt.min = x + minim
            tt.max = x + maxim
            tt.rutina = rutina
            sc = BoardElements.TiempoSC(self.escena, tt)
            sc.ponCentesimas(0)
            return sc

        self.txtInicio = tiempoSC(2, 40, "d", 0, 400, self.mv_inicio, 4294242784)
        self.txtFinal = tiempoSC(ancho - 6 - 68, 40, "i", -400, 0, self.mv_final, 4294242784)
        self.txtActual = tiempoSC(68 + 2, 10, "a", 0, 400, None, 4294242784)
        self.txtDuracion = tiempoSC(236, 78, None, 0, 0, None, 4289509046)

        tf = BoardTypes.Caja()
        tf.physical_pos.orden = 2
        tf.physical_pos.x = 70
        tf.physical_pos.y = 44
        tf.physical_pos.ancho = 400
        tf.physical_pos.alto = 4
        tf.grosor = 0
        tf.colorRelleno = 4281413888
        self.linMain = BoardElements.CajaSC(self.escena, tf)

        tf = BoardTypes.Caja()
        tf.physical_pos.orden = 2
        tf.physical_pos.x = 70
        tf.physical_pos.y = 32
        tf.physical_pos.ancho = 0
        tf.physical_pos.alto = 26
        tf.colorRelleno = 4281413888
        BoardElements.CajaSC(self.escena, tf)

        tf = BoardTypes.Caja()
        tf.physical_pos.orden = 2
        tf.physical_pos.x = 470
        tf.physical_pos.y = 32
        tf.physical_pos.ancho = 0
        tf.physical_pos.alto = 26
        tf.colorRelleno = 4281413888
        BoardElements.CajaSC(self.escena, tf)

        self.setFixedSize(ancho, alto)
示例#12
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
    def __init__(self, owner, list_svgs, dbSVGs):

        titulo = _("Images")
        icono = Iconos.SVGs()
        extparam = "svgs"
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, extparam)

        self.owner = owner

        flb = Controles.TipoLetra(puntos=8)

        self.configuration = Code.configuration
        self.liPSVGs = list_svgs
        self.dbSVGs = dbSVGs

        # 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="M", 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)

        # Ejemplos
        liMovs = ["g4h3", "e2e2", "d6f4"]
        self.liEjemplos = []
        regSVG = BoardTypes.SVG()
        for a1h8 in liMovs:
            regSVG.a1h8 = a1h8
            regSVG.xml = estrellaSVG
            regSVG.siMovible = True
            svg = self.board.creaSVG(regSVG, siEditando=True)
            self.liEjemplos.append(svg)

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