def leeGuion(self, nomGuion, siFenInicial): li = self.dbGuiones.get(nomGuion, TabVisual.Guion()) self.guion = TabVisual.Guion() if li: self.tablero.dicMovibles = {} # self.tableroOwner.borraMovibles() self.tablero.crea() for reg in li: if reg._registro: tp, id, a1h8 = reg._registro tarea, fila = self.creaTareaBase(tp, id, a1h8, -1) if tarea is None: continue tarea.recupera(reg) if hasattr(reg, "_bloqueDatos"): sc = tarea.itemSC() sc.bloqueDatos = reg._bloqueDatos sc.update() sc.setVisible(False) tarea.marcado(False) else: tarea = self.guion.recuperaReg(reg) tarea._marcado = False if siFenInicial: cp = ControlPosicion.ControlPosicion() cp.leeFen(self.fenInicial) self.tablero.ponPosicionBase(cp) self.tablero.activaTodas() self.nomGuion = nomGuion
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()
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()