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 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
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()