Exemplo n.º 1
0
    def creaTareaBase(self, tp, id, a1h8, fila):

        tpid = tp, id
        if tp == "P":
            tarea = TabVisual.GT_PiezaMueve()
            tarea.desdeHasta(a1h8[:2], a1h8[2:])
        elif tp == "C":
            tarea = TabVisual.GT_PiezaCrea()
            tarea.desde(a1h8)
            tarea.pieza(id)
        elif tp == "B":
            tarea = TabVisual.GT_PiezaBorra()
            tarea.desde(a1h8)
            tarea.pieza(id)
        else:
            if tp == "F":
                regFlecha = self.dbFlechas[id]
                if regFlecha is None:
                    return None, None
                regFlecha.tpid = tpid
                regFlecha.a1h8 = a1h8
                sc = self.tablero.creaFlecha(regFlecha)
                tarea = TabVisual.GT_Flecha()
            elif tp == "M":
                regMarco = self.dbMarcos[id]
                if regMarco is None:
                    return None, None
                regMarco.tpid = tpid
                regMarco.a1h8 = a1h8
                sc = self.tablero.creaMarco(regMarco)
                tarea = TabVisual.GT_Marco()
            elif tp == "S":
                regSVG = self.dbSVGs[id]
                if regSVG is None:
                    return None, None
                regSVG.tpid = tpid
                regSVG.a1h8 = a1h8
                sc = self.tablero.creaSVG(regSVG, siEditando=True)
                tarea = TabVisual.GT_SVG()
            elif tp == "X":
                regMarker = self.dbMarkers[id]
                if regMarker is None:
                    return None, None
                regMarker.tpid = tpid
                regMarker.a1h8 = a1h8
                sc = self.tablero.creaMarker(regMarker, siEditando=True)
                tarea = TabVisual.GT_Marker()
            sc.ponRutinaPulsada(self.pulsadoItemSC, tarea.id())
            tarea.itemSC(sc)

        tarea.marcado(True)
        tarea.registro((tp, id, a1h8))
        fila = self.guion.nuevaTarea(tarea, fila)

        return tarea, fila
    def creaTareaBase(self, tp, xid, a1h8, fila):
        # 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)
            desde, hasta = a1h8[:2], a1h8[2:]
            borra = self.tablero.dameNomPiezaEn(hasta)
            tarea.desdeHastaBorra(desde, hasta, borra)
            self.tablero.activaTodas()
        elif tp == "C":
            tarea = TabVisual.GT_PiezaCrea(self.guion)
            borra = self.tablero.dameNomPiezaEn(a1h8)
            tarea.desde(a1h8, borra)
            tarea.pieza(xid)
            self.tablero.activaTodas()
        elif tp == "B":
            tarea = TabVisual.GT_PiezaBorra(self.guion)
            tarea.desde(a1h8)
            tarea.pieza(xid)
        else:
            if tp == TabVisual.TP_FLECHA:
                regFlecha = self.dbFlechas[xid]
                if regFlecha is None:
                    return None, None
                regFlecha.tpid = tpid
                regFlecha.a1h8 = a1h8
                sc = self.tablero.creaFlecha(regFlecha)
                tarea = TabVisual.GT_Flecha(self.guion)
            elif tp == TabVisual.TP_MARCO:
                regMarco = self.dbMarcos[xid]
                if regMarco is None:
                    return None, None
                regMarco.tpid = tpid
                regMarco.a1h8 = a1h8
                sc = self.tablero.creaMarco(regMarco)
                tarea = TabVisual.GT_Marco(self.guion)
            elif tp == TabVisual.TP_SVG:
                regSVG = self.dbSVGs[xid]
                if regSVG is None:
                    return None, None
                regSVG.tpid = tpid
                regSVG.a1h8 = a1h8
                sc = self.tablero.creaSVG(regSVG, siEditando=True)
                tarea = TabVisual.GT_SVG(self.guion)
            elif tp == TabVisual.TP_MARKER:
                regMarker = self.dbMarkers[xid]
                if regMarker is None:
                    return None, None
                regMarker.tpid = tpid
                regMarker.a1h8 = a1h8
                sc = self.tablero.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))
        fila = self.guion.nuevaTarea(tarea, fila)

        return tarea, fila