Ejemplo n.º 1
0
    def __init__(self, panelOpening, procesador, configuracion):
        QtGui.QWidget.__init__(self)

        self.panelOpening = panelOpening
        self.dbop = panelOpening.dbop

        self.procesador = procesador
        self.configuracion = configuracion
        self.partida = None
        self.njg = None

        self.tabengine = TabEngine(self, procesador, configuracion)
        self.liTabs = [
            ("engine", self.tabengine),
        ]
        self.tabActive = 0

        self.tabs = Controles.Tab(panelOpening)
        self.tabs.ponTipoLetra(puntos=self.configuracion.puntosPGN)
        self.tabs.nuevaTab(self.tabengine, _("Engine"))
        self.tabs.setTabIcon(0, Iconos.Motor())
        self.tabs.dispatchChange(self.tabChanged)

        tabButton = QtGui.QToolButton(self)
        tabButton.setIcon(Iconos.Nuevo())
        tabButton.clicked.connect(self.creaTab)
        li = [(_("Analysis of next move"), True),
              (_("Analysis of current move"), False)]
        self.cb_nextmove = Controles.CB(self, li, True).capturaCambiado(
            self.changedNextMove)

        corner_widget = QtGui.QWidget(self)
        lyCorner = Colocacion.H().control(
            self.cb_nextmove).control(tabButton).margen(0)
        corner_widget.setLayout(lyCorner)

        self.tabs.setCornerWidget(corner_widget)
        self.tabs.setTabsClosable(True)
        self.tabs.tabCloseRequested.connect(self.tabCloseRequested)

        layout = Colocacion.V()
        layout.control(self.tabs).margen(0)
        self.setLayout(layout)
Ejemplo n.º 2
0
    def __init__(self, procesador, owner=None):

        self.procesador = procesador
        self.ficheroDatos = procesador.configuracion.ficheroPersAperturas
        self.lista = self.leer()

        if owner is None:
            owner = procesador.pantalla
        icono = Iconos.Apertura()
        titulo = _("Custom openings")
        extparam = "customopen"
        super().__init__(parent=owner, titulo=titulo, icono=icono, extparam=extparam)

        # Toolbar
        tb = Controles.TBrutina(self)
        tb.new(_("Close"), Iconos.MainMenu(), self.terminar)
        tb.new(_("New"), Iconos.TutorialesCrear(), self.nuevo)
        tb.new(_("Modify"), Iconos.Modificar(), self.modificar)
        tb.new(_("Remove"), Iconos.Borrar(), self.borrar)
        tb.new(_("Copy"), Iconos.Copiar(), self.copiar)
        tb.new(_("Up"), Iconos.Arriba(), self.arriba)
        tb.new(_("Down"), Iconos.Abajo(), self.abajo)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("NOMBRE", _("Name"), 240)
        oColumnas.nueva("ECO", "ECO", 70, siCentrado=True)
        oColumnas.nueva("PGN", "PGN", 280)
        oColumnas.nueva("ESTANDAR", _("Add to standard list"), 120, siCentrado=True)

        self.grid = Grid.Grid(self, oColumnas, siSelecFilas=True)
        n = self.grid.anchoColumnas()
        self.grid.setMinimumWidth(n + 20)
        self.registrarGrid(self.grid)
        self.grid.gotop()

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).margen(8)
        self.setLayout(layout)

        self.recuperarVideo(siTam=True)

        self.dicPGNSP = {}
Ejemplo n.º 3
0
    def __init__(self, parent, titulo, siErroneos, icono):
        QtGui.QDialog.__init__(self, parent)
        self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint)

        self.setWindowTitle(titulo)
        self.setWindowIcon(icono)
        self.fontB = f = Controles.TipoLetra(puntos=10, peso=75)

        self.siErroneos = siErroneos

        self.siCancelado = False

        lbRotLeidos = Controles.LB(self, _("Games read") + ":").ponFuente(f)
        self.lbLeidos = Controles.LB(self, "0").ponFuente(f)

        if siErroneos:
            lbRotErroneos = Controles.LB(self, _("Erroneous") + ":").ponFuente(f)
            self.lbErroneos = Controles.LB(self, "0").ponFuente(f)

        self.lbRotDuplicados = Controles.LB(self, _("Duplicated") + ":").ponFuente(f)
        self.lbDuplicados = Controles.LB(self, "0").ponFuente(f)

        self.lbRotImportados = lbRotImportados = Controles.LB(self, _("Imported") + ":").ponFuente(f)
        self.lbImportados = Controles.LB(self, "0").ponFuente(f)

        self.btCancelarSeguir = Controles.PB(self, _("Cancel"), self.cancelar, plano=False).ponIcono(Iconos.Delete())

        # Tiempo
        ly = Colocacion.G().margen(20)
        ly.controld(lbRotLeidos, 0, 0).controld(self.lbLeidos, 0, 1)
        if siErroneos:
            ly.controld(lbRotErroneos, 1, 0).controld(self.lbErroneos, 1, 1)
        ly.controld(self.lbRotDuplicados, 2, 0).controld(self.lbDuplicados, 2, 1)
        ly.controld(lbRotImportados, 3, 0).controld(self.lbImportados, 3, 1)

        lyBT = Colocacion.H().relleno().control(self.btCancelarSeguir)

        layout = Colocacion.V()
        layout.otro(ly)
        layout.espacio(20)
        layout.otro(lyBT)

        self.setLayout(layout)
Ejemplo n.º 4
0
    def __init__(self, file_tournament, file_work):
        QtWidgets.QWidget.__init__(self)

        Code.list_engine_managers = EngineManager.ListEngineManagers()
        self.torneo = TournamentRun(
            file_tournament)  # Tournament.Tournament(file_tournament)
        self.file_work = file_work
        self.db_work = UtilSQL.ListSQL(file_work)

        self.slow_pieces = self.torneo.slow_pieces()

        self.setWindowTitle(
            "%s - %s %d" %
            (self.torneo.name(), _("Worker"), int(file_work[-5:])))
        self.setWindowIcon(Iconos.Torneos())

        # Toolbar
        self.tb = Controles.TBrutina(self, icon_size=24)

        # Board
        conf_board = Code.configuration.config_board("TOURNEYPLAY", 36)
        self.board = Board.Board(self, conf_board)
        self.board.crea()
        Delegados.generaPM(self.board.piezas)

        # PGN
        self.configuration = Code.configuration
        self.game = Game.Game()
        self.pgn = ControlPGN.ControlPGN(self)
        ly_pgn = self.crea_bloque_informacion()

        self.is_closed = False
        self.state = None
        self.current_side = WHITE

        ly_tt = Colocacion.V().control(self.tb).control(self.board)

        layout = Colocacion.H().otro(ly_tt).otro(ly_pgn).relleno().margen(3)
        self.setLayout(layout)

        self.cpu = CPU.CPU(self)

        self.pon_estado(ST_WAITING)
Ejemplo n.º 5
0
    def __init__(self, wParent):

        titulo = _("Tournaments between engines")
        icono = Iconos.Torneos()
        extparam = "torneos"
        QTVarios.WDialogo.__init__(self, wParent, titulo, icono, extparam)

        self.configuracion = VarGen.configuracion

        # Datos
        self.lista = self.leeTorneos()
        self.xjugar = None

        # Toolbar
        liAcciones = ((_("Close"), Iconos.MainMenu(), "terminar", True),
                      (_("New"), Iconos.Nuevo(), "crear", True),
                      (_("Modify"), Iconos.Modificar(), "modificar", False),
                      (_("Copy"), Iconos.Copiar(), "copiar", False),
                      (_("Remove"), Iconos.Borrar(), "borrar", False),
                      )
        li = []
        siTodos = len(self.lista) > 0
        for txt, ico, clv, siT in liAcciones:
            if siTodos or siT:
                li.append((txt, ico, clv))
                li.append(None)
        tb = Controles.TB(self, li)

        # grid
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("NOMBRE", _("Name"), 240)
        oColumnas.nueva("FECHA", _("Date"), 120, siCentrado=True)

        self.grid = Grid.Grid(self, oColumnas, siSelecFilas=True)
        self.registrarGrid(self.grid)

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).margen(8)
        self.setLayout(layout)

        self.recuperarVideo(siTam=True, anchoDefecto=400, altoDefecto=500)

        self.grid.gotop()
Ejemplo n.º 6
0
    def __init__(self, owner, titulo, wav=None, maxTime=None, nombre=None):

        # titulo = _("Sound edition" )
        icono = Iconos.S_Play()
        extparam = "sound"
        super().__init__(parent=owner,
                         titulo=titulo,
                         icono=icono,
                         extparam=extparam)

        self.confich = VarGen.configuracion.ficheroDirSound

        # toolbar
        self.tb = QtWidgets.QToolBar("BASICO", self)
        self.tb.setIconSize(QtCore.QSize(32, 32))
        self.tb.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon)
        self.preparaTB()

        # Nombre
        siNombre = nombre is not None
        if siNombre:
            lbNom = Controles.LB(self, _("Name") + ":")
            self.edNom = Controles.ED(self, nombre).anchoMinimo(180)
            lyNom = Colocacion.H().control(lbNom).control(self.edNom).relleno()

        # MesaSonido
        self.mesa = MesaSonido(self)
        self.taller = Sonido.TallerSonido(wav)

        self.mesa.ponCentesimas(self.taller.centesimas)

        self.maxTime = maxTime if maxTime else 300.0  # segundos=5 minutos

        layout = Colocacion.V().control(self.tb)
        if siNombre:
            layout.otro(lyNom)
        layout.control(self.mesa).margen(3)

        self.setLayout(layout)

        self.ponBaseTB()

        self.recuperarVideo(siTam=False)
Ejemplo n.º 7
0
    def __init__(self, wParent, txtcategoria, maxNivel):
        super(WDatos, self).__init__(wParent)

        self.setWindowTitle(_("Check your memory on a chessboard"))
        self.setWindowIcon(Iconos.Memoria())
        self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint)

        tb = QTUtil2.tbAcceptCancel(self)

        f = Controles.TipoLetra(puntos=12, peso=75)

        self.ed, lb = QTUtil2.spinBoxLB(self, maxNivel, 1, maxNivel, etiqueta=txtcategoria + " " + _("Level"), maxTam=40)
        lb.ponFuente(f)

        ly = Colocacion.H().control(lb).control(self.ed).margen(20)

        layout = Colocacion.V().control(tb).otro(ly).margen(3)

        self.setLayout(layout)
Ejemplo n.º 8
0
    def __init__(self, procesador):

        self.procesador = procesador

        self.db = Util.DicBLOB(procesador.configuracion.ficheroSounds,
                               "general")
        self.creaListaSonidos()

        titulo = _("Custom sounds")
        icono = Iconos.S_Play()
        extparam = "sounds"
        super().__init__(titulo=titulo, icono=icono, extparam=extparam)

        # Toolbar
        liAcciones = (
            (_("Close"), Iconos.MainMenu(), "terminar"),
            None,
            (_("Modify"), Iconos.Modificar(), "modificar"),
            None,
            (_("Listen"), Iconos.S_Play(), "play"),
        )
        tb = Controles.TB(self, liAcciones)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("SONIDO", _("Sound"), 300, siCentrado=True)
        oColumnas.nueva("DURACION", _("Duration"), 60, siCentrado=True)

        self.grid = Grid.Grid(self, oColumnas, siSelecFilas=True)

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).margen(3)
        self.setLayout(layout)

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

        self.siPlay = False

        self.registrarGrid(self.grid)

        if not self.recuperarVideo():
            self.resize(self.grid.anchoColumnas() + 30, 600)
Ejemplo n.º 9
0
    def __init__(self, procesador, test, titulo, tabla, icono):

        QTVarios.WDialogo.__init__(self, procesador.main_window, titulo, icono, "horsesBase")

        self.procesador = procesador
        self.configuration = procesador.configuration
        self.tabla = tabla
        self.icono = icono
        self.test = test
        self.titulo = titulo

        self.historico = HorsesHistorico(self.configuration.ficheroHorses, tabla)

        # Historico
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("FECHA", _("Date"), 120, centered=True)
        o_columns.nueva("MOVES", _("Moves"), 100, centered=True)
        o_columns.nueva("SECONDS", _("Second(s)"), 80, centered=True)
        o_columns.nueva("HINTS", _("Hints"), 90, centered=True)
        self.ghistorico = Grid.Grid(self, o_columns, siSelecFilas=True, siSeleccionMultiple=True)
        self.ghistorico.setMinimumWidth(self.ghistorico.anchoColumnas() + 20)

        # Tool bar
        li_acciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            (_("Start"), Iconos.Empezar(), self.empezar),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        )
        self.tb = Controles.TBrutina(self, li_acciones)

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.ghistorico).margen(3)

        self.setLayout(ly)

        self.register_grid(self.ghistorico)
        self.restore_video(siTam=False)

        self.ghistorico.gotop()
Ejemplo n.º 10
0
    def __init__(self, owner, partida):

        titulo = _("Choose moves")
        icono = Iconos.Camara()
        extparam = "tabvpart"
        super().__init__(parent=owner, titulo=titulo, icono=icono, extparam=extparam)

        self.owner = owner
        self.partida = partida
        self.siEmpiezaConNegras = partida.siEmpiezaConNegras
        siTodos = True
        self.liElegidos = [siTodos] * len(partida)

        liAcciones = [(_("Accept"), Iconos.Aceptar(), "aceptar"), None,
                      (_("Cancel"), Iconos.Cancelar(), "reject"), None,
                      (_("Mark"), Iconos.Marcar(), "marcar"), None,
                      ]
        tb = Controles.TB(self, liAcciones)

        # Tablero
        confTablero = VarGen.configuracion.confTablero("ELIGEMOVS", 24)
        self.tablero = Tablero.Tablero(self, confTablero, siDirector=False)
        self.tablero.crea()
        self.tablero.desactivaTodas()

        # Pgn
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("ELEGIDO", "", 30, siCentrado=True, siChecked=True)
        oColumnas.nueva("NUMERO", _("N."), 35, siCentrado=True)
        oColumnas.nueva("BLANCAS", _("White"), 100, siCentrado=True)
        oColumnas.nueva("NEGRAS", _("Black"), 100, siCentrado=True)
        self.pgn = Grid.Grid(self, oColumnas, siCabeceraMovible=False, siSelecFilas=True)
        nAnchoPgn = self.pgn.anchoColumnas() + 20
        self.pgn.setMinimumWidth(nAnchoPgn)
        self.pgn.gotop()

        ly = Colocacion.H().control(self.tablero).control(self.pgn)

        layout = Colocacion.V().control(tb).otro(ly)
        self.setLayout(layout)
        self.pgn.setFocus()

        self.resultado = []
Ejemplo n.º 11
0
    def __init__(self, grid_owner, configuration, work):
        QtWidgets.QDialog.__init__(self, grid_owner)
        self.setWindowTitle(_("Edit columns"))
        self.setWindowIcon(Iconos.EditColumns())

        self.grid_owner = grid_owner
        self.o_columnas_base = grid_owner.columnas()
        self.o_columnas = self.o_columnas_base.clone()

        self.configuration = configuration
        self.work = work

        li_options = [
            (_("Save"), Iconos.GrabarFichero(), self.aceptar),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.reject),
            None,
            (_("Up"), Iconos.Arriba(), self.tw_up),
            (_("Down"), Iconos.Abajo(), self.tw_down),
            None,
            (_("Configurations"), Iconos.Configurar(), self.configurations),
            None,
        ]
        tb = QTVarios.LCTB(self, li_options)

        # Grid
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("SIMOSTRAR", "", 20, siChecked=True)
        o_columns.nueva("CLAVE", _("Key"), 80, centered=True)
        o_columns.nueva("CABECERA", _("Title"), 150, edicion=Delegados.LineaTexto())
        o_columns.nueva("ANCHO", _("Width"), 60, edicion=Delegados.LineaTexto(siEntero=True), siDerecha=True)

        self.liAlin = [_("Left"), _("Center"), _("Right")]
        o_columns.nueva("ALINEACION", _("Alignment"), 100, centered=True, edicion=Delegados.ComboBox(self.liAlin))
        o_columns.nueva("CTEXTO", _("Foreground"), 80, centered=True)
        o_columns.nueva("CFONDO", _("Background"), 80, centered=True)
        self.grid = Grid.Grid(self, o_columns, siEditable=True)

        layout = Colocacion.V().control(tb).control(self.grid).margen(3)
        self.setLayout(layout)

        self.resize(self.grid.anchoColumnas() + 48, 360)
        self.grid.goto(0, 1)
Ejemplo n.º 12
0
    def __init__(self,
                 wParent,
                 titulo,
                 hasta,
                 etiqueta=None,
                 pos=None,
                 mensAdicional=None):
        super(WNumEntrenamiento, self).__init__(wParent)

        self.setWindowTitle(titulo)
        self.setWindowIcon(Iconos.Datos())

        tb = QTUtil2.tbAcceptCancel(self)

        if pos is None:
            pos = 1  # random.randint( 1, hasta )

        if etiqueta is None:
            etiqueta = _("Training unit")

        self.ed, lb = QTUtil2.spinBoxLB(self,
                                        pos,
                                        1,
                                        hasta,
                                        etiqueta=etiqueta,
                                        maxTam=60)
        lb1 = Controles.LB(self, "/ %d" % hasta)

        if mensAdicional:
            lb2 = Controles.LB(self, mensAdicional)
            lb2.ponWrap().anchoMinimo(250)

        lyH = Colocacion.H().relleno().control(lb).control(
            self.ed).control(lb1).relleno().margen(15)

        lyV = Colocacion.V().control(tb).otro(lyH)
        if mensAdicional:
            lyV.control(lb2)
        lyV.margen(3)

        self.setLayout(lyV)

        self.resultado = None
Ejemplo n.º 13
0
    def __init__(self, entrenamientos):

        entrenamientos.comprueba()
        self.entrenamientos = entrenamientos
        self.procesador = entrenamientos.procesador
        self.liFavoritos = self.procesador.configuracion.liFavoritos

        super().__init__(titulo=_("Training favorites"),
                         icono=Iconos.Corazon(),
                         extparam="favoritos")

        # Toolbar
        liAcciones = [
            (_("Close"), Iconos.MainMenu(), "terminar"),
            None,
            (_("New"), Iconos.Nuevo(), "nuevo"),
            None,
            (_("Remove"), Iconos.Borrar(), "borrar"),
            None,
            (_("Up"), Iconos.Arriba(), "arriba"),
            None,
            (_("Down"), Iconos.Abajo(), "abajo"),
            None,
        ]
        tb = Controles.TB(self, liAcciones)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("OPCION", _("Training"), 400)

        self.grid = Grid.Grid(self, oColumnas, siSelecFilas=True)
        self.grid.setMinimumWidth(self.grid.anchoColumnas() + 20)
        f = Controles.TipoLetra(puntos=10, peso=75)
        self.grid.setFont(f)

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).relleno()
        self.setLayout(layout)

        self.recuperarVideo(siTam=True)

        self.grid.gotop()
Ejemplo n.º 14
0
    def __init__(self, owner, db):

        self.db = db

        self.liSonidos = owner.listaSonidos()

        titulo = _("Custom sounds")
        icono = Iconos.S_Play()
        extparam = "sounds"
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, extparam)

        # Toolbar
        liAcciones = (  ( _("Quit"), Iconos.MainMenu(), "terminar" ), None,
                        ( _("New"), Iconos.Nuevo(), "nuevo" ),
                        ( _("Modify"), Iconos.Modificar(), "modificar" ), None,
                        ( _("Remove"), Iconos.Borrar(), "borrar" ), None,
                        ( _("Up"), Iconos.Arriba(), "arriba" ),
                        ( _("Down"), Iconos.Abajo(), "abajo" ), None,
                        ( _("Listen"), Iconos.S_Play(), "play" ),
        )
        tb = Controles.TB(self, liAcciones)

        # Lista
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("NOMBRE", _("Sound"), 300, siCentrado=True)
        oColumnas.nueva("DURACION", _("Duration"), 60, siCentrado=True)

        self.grid = Grid.Grid(self, oColumnas, siSelecFilas=True)

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).margen(3)
        self.setLayout(layout)

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

        self.siPlay = False

        self.registrarGrid(self.grid)

        if not self.recuperarVideo():
            self.resize(self.grid.anchoColumnas() + 30, 600)
Ejemplo n.º 15
0
    def __init__(self, procesador):
        configuration = procesador.configuration
        path = configuration.file_coordinates()
        title = _("Coordinates by blocks")
        icon = Iconos.Blocks()
        extconfig = "coordinatesbyblocks"
        self.db = CoordinatesBlocks.DBCoordinatesBlocks(path)

        QTVarios.WDialogo.__init__(self, procesador.main_window, title, icon,
                                   extconfig)

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("DATE_INI", _("Initial date"), 140, centered=True)
        o_columns.nueva("DATE_END", _("End date"), 140, centered=True)
        o_columns.nueva("DONE", _("Done"), 100, centered=True)
        o_columns.nueva("TRIES", _("Tries"), 90, centered=True)
        o_columns.nueva("SCORE", _("Score"), 90, centered=True)
        self.glista = Grid.Grid(self,
                                o_columns,
                                siSelecFilas=True,
                                siSeleccionMultiple=True)
        f = Controles.TipoLetra(puntos=configuration.x_menu_points)
        self.glista.ponFuente(f)

        li_acciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            (_("Play"), Iconos.Play(), self.play),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        )
        tb = QTVarios.LCTB(self, li_acciones)

        ly = Colocacion.V().control(tb).control(self.glista).margen(4)

        self.setLayout(ly)

        self.register_grid(self.glista)
        self.restore_video(anchoDefecto=self.glista.anchoColumnas() + 30)

        self.glista.gotop()
Ejemplo n.º 16
0
    def __init__(self, wgm, ogm):
        self.ogm = ogm
        self.liRegs = ogm.gen_toselect()
        self.si_reverse = False
        self.claveSort = None

        dgm = GM.dic_gm()
        name = dgm.get(ogm.gm, ogm.gm)
        titulo = "%s - %s" % (_("One game"), name)
        icono = Iconos.Uno()
        extparam = "gm1g"
        QTVarios.WDialogo.__init__(self, wgm, titulo, icono, extparam)

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("NOMBRE", _("Opponent"), 180)
        o_columns.nueva("FECHA", _("Date"), 90, centered=True)
        o_columns.nueva("EVENT", _("Event"), 140, centered=True)
        o_columns.nueva("ECO", _("ECO"), 40, centered=True)
        o_columns.nueva("RESULT", _("Result"), 64, centered=True)
        self.grid = Grid.Grid(self,
                              o_columns,
                              siSelecFilas=True,
                              siSeleccionMultiple=True)
        nAnchoPgn = self.grid.anchoColumnas() + 20
        self.grid.setMinimumWidth(nAnchoPgn)
        self.grid.coloresAlternados()

        self.register_grid(self.grid)

        li_acciones = [(_("Accept"), Iconos.Aceptar(), self.aceptar), None,
                       (_("Cancel"), Iconos.Cancelar(), self.cancelar), None]
        if ogm.isErasable:
            li_acciones.append((_("Remove"), Iconos.Borrar(), self.remove))
            li_acciones.append(None)

        tb = Controles.TBrutina(self, li_acciones)

        layout = Colocacion.V().control(tb).control(self.grid).margen(3)
        self.setLayout(layout)

        self.restore_video(anchoDefecto=400)
        self.gameElegida = None
Ejemplo n.º 17
0
    def __init__(self, procesador, nivel):

        titulo = "%s. %s %d" % (_("Moves between two positions"), _("Level"), nivel)
        QTVarios.WDialogo.__init__(self, procesador.pantalla, titulo, Iconos.Puente(), "puenteBase")

        self.procesador = procesador
        self.configuracion = procesador.configuracion
        self.nivel = nivel

        self.historico = PuenteHistorico(self.configuracion.ficheroPuente, nivel)

        self.colorMejorFondo = QTUtil.qtColorRGB(150, 104, 145)
        self.colorBien = QTUtil.qtColorRGB(0, 0, 255)
        self.colorMal = QTUtil.qtColorRGB(255, 72, 72)
        self.colorMejor = QTUtil.qtColorRGB(255, 255, 255)

        # Historico
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("FECHA", _("Date"), 120, siCentrado=True)
        oColumnas.nueva("SEGUNDOS", _("Second(s)"), 120, siCentrado=True)
        self.ghistorico = Grid.Grid(self, oColumnas, siSelecFilas=True, siSeleccionMultiple=True)
        self.ghistorico.setMinimumWidth(self.ghistorico.anchoColumnas() + 20)

        # Tool bar
        liAcciones = (
            (_("Close"), Iconos.MainMenu(), "terminar"), None,
            (_("Start"), Iconos.Empezar(), "empezar"),
            (_("Remove"), Iconos.Borrar(), "borrar"), None,
        )
        self.tb = Controles.TB(self, liAcciones)
        self.ponToolBar("terminar", "empezar", "borrar")

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.ghistorico).margen(3)

        self.setLayout(ly)

        self.registrarGrid(self.ghistorico)
        self.recuperarVideo(siTam=False)

        self.ghistorico.gotop()
Ejemplo n.º 18
0
    def __init__(self, procesador):
        configuration = procesador.configuration
        path = configuration.file_mate15()
        title = _("Mate in 1½")
        icon = Iconos.Mate15()
        extconfig = "mate15"
        self.db = Mate15.DBMate15(path)

        QTVarios.WDialogo.__init__(self, procesador.main_window, title, icon, extconfig)

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("POS", _("N."), 70, centered=True)
        o_columns.nueva("DATE", _("Date"), 120, centered=True)
        o_columns.nueva("INFO", _("Information"), 360)
        o_columns.nueva("TRIES", _("Tries"), 70, centered=True)
        o_columns.nueva("RESULT", _("Result"), 70, centered=True)
        self.glista = Grid.Grid(self, o_columns, siSelecFilas=True, siSeleccionMultiple=True, altoFila=configuration.x_pgn_rowheight)
        f = Controles.TipoLetra(puntos=configuration.x_pgn_fontpoints)
        self.glista.ponFuente(f)

        li_acciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            (_("Play"), Iconos.Play(), self.play),
            None,
            (_("New"), Iconos.Nuevo(), self.new),
            None,
            (_("Repeat"), Iconos.Copiar(), self.repetir),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        )
        tb = Controles.TBrutina(self, li_acciones)

        ly = Colocacion.V().control(tb).control(self.glista).margen(4)

        self.setLayout(ly)

        self.register_grid(self.glista)
        self.restore_video(anchoDefecto=self.glista.anchoColumnas() + 30)

        self.glista.gotop()
Ejemplo n.º 19
0
    def __init__(self, owner):
        self.owner = owner
        configuration = Code.configuration
        self.with_figurines = configuration.x_pgn_withfigurines
        puntos = configuration.x_pgn_fontpoints

        QtWidgets.QWidget.__init__(self, self.owner)

        li_acciones = (
            None,
            (_("Append"), Iconos.Mas(), self.tb_mas_variation),
            None,
            ("%s+%s" % (_("Append"), _("Engine")), Iconos.MasR(),
             self.tb_mas_variation_r),
            None,
            (_("Edit in other board"), Iconos.EditVariation(),
             self.tb_edit_variation),
            None,
            (_("Remove"), Iconos.Borrar(), self.tb_remove_variation),
            None,
        )
        tb_variations = Controles.TBrutina(self,
                                           li_acciones,
                                           with_text=False,
                                           icon_size=16)

        self.em = ShowPGN.ShowPGN(self, puntos, self.with_figurines)
        self.em.set_link(self.link_variation_pressed)
        self.em.set_edit(self.link_variation_edit)

        f = Controles.TipoLetra(puntos=puntos, peso=750)

        lb_variations = Controles.LB(self.owner, _("Variations")).ponFuente(f)

        ly_head = Colocacion.H().control(lb_variations).relleno().control(
            tb_variations)

        layout = Colocacion.V().otro(ly_head).control(self.em).margen(0)
        self.setLayout(layout)

        self.move = None
        self.selected_link = None
Ejemplo n.º 20
0
    def __init__(self, procesador):

        self.procesador = procesador

        self.db = UtilSQL.DictSQL(procesador.configuration.file_sounds(), "general")
        self.creaListaSonidos()

        titulo = _("Custom sounds")
        icono = Iconos.S_Play()
        extparam = "sounds"
        QTVarios.WDialogo.__init__(self, procesador.main_window, titulo, icono, extparam)

        # Toolbar
        li_acciones = (
            (_("Close"), Iconos.MainMenu(), "terminar"),
            None,
            (_("Modify"), Iconos.Modificar(), "modificar"),
            None,
            (_("Listen"), Iconos.S_Play(), "play"),
        )
        tb = Controles.TB(self, li_acciones)

        # Lista
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("SONIDO", _("Sound"), 300, centered=True)
        o_columns.nueva("DURACION", _("Duration"), 60, centered=True)

        self.grid = Grid.Grid(self, o_columns, siSelecFilas=True)

        # Layout
        layout = Colocacion.V().control(tb).control(self.grid).margen(3)
        self.setLayout(layout)

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

        self.siPlay = False

        self.register_grid(self.grid)

        if not self.restore_video():
            self.resize(self.grid.anchoColumnas() + 30, 600)
Ejemplo n.º 21
0
    def __init__(self, owner, procesador):

        title = _("In one line")
        titulo = _("Turn on the lights") + ": " + title
        extparam = "tolconfoneline"
        icono = Iconos.TOLchange()
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, extparam)

        self.tol = TurnOnLights.read_oneline_tol()
        self.procesador = procesador

        lbNumPos = Controles.LB2P(self, _("Number of positions"))
        liBlocks = [(str(x), x) for x in range(6, 60, 6)]
        self.cbNumPos = Controles.CB(self, liBlocks, self.tol.num_pos)

        lbtipo = Controles.LB2P(self, _("Mode"))
        liTipos = [(_("Calculation mode"), True),  (_("Memory mode"), False)]
        self.cbTipo = Controles.CB(self, liTipos, self.tol.calculation_mode)

        lbfile = Controles.LB2P(self, _("File"))
        pbfile = Controles.PB(self, "", self.newfile).ponIcono(Iconos.Buscar())
        self.lbshowfile = Controles.LB(self, self.tol.fns)
        lyfile = Colocacion.H().control(pbfile).control(self.lbshowfile).relleno(1)

        self.chbauto = Controles.CHB(self, _("Redo each day automatically"), self.tol.auto_day )

        tb = QTVarios.LCTB(self)
        tb.new(_("Accept"), Iconos.Aceptar(), self.aceptar)
        tb.new(_("Cancel"), Iconos.Cancelar(), self.cancelar)

        # Colocamos ---------------------------------------------------------------
        ly = Colocacion.G()
        ly.controld(lbNumPos, 1, 0).control(self.cbNumPos, 1, 1)
        ly.controld(lbtipo, 2, 0).control(self.cbTipo, 2, 1)
        ly.controld(lbfile, 3, 0).otro(lyfile, 3, 1)
        ly.control(self.chbauto, 4, 0, 1, 2)

        layout = Colocacion.V().control(tb).espacio(10).otro(ly)

        self.setLayout(layout)

        self.recuperarVideo(siTam=True)
Ejemplo n.º 22
0
    def creaRestoControles(self):

        liAcciones = (
            (_("Quit"), Iconos.Kibitzer_Terminar(), self.terminar),
            (_("Continue"), Iconos.Kibitzer_Continuar(), self.play),
            (_("Pause"), Iconos.Kibitzer_Pausa(), self.pause),
            (_("Analyze only color"), Iconos.P_16c(), self.color),
            ("%s: %s" % (_("Enable"), _("window on top")), Iconos.Top(), self.windowTop),
            ("%s: %s" % (_("Disable"), _("window on top")), Iconos.Bottom(), self.windowBottom),
        )
        self.tb = Controles.TBrutina(self, liAcciones, siTexto=False, tamIcon=16)
        self.tb.setAccionVisible(self.play, False)
        self.tb.setAccionVisible(self.windowTop, False)
        self.em = Controles.EM(self).soloLectura()

        layout = Colocacion.V().control(self.tb).control(self.em).margen(1)

        self.setLayout(layout)

        self.lanzaMotor(True)
Ejemplo n.º 23
0
    def __init__(self, owner, is_game, game):

        titulo = _("Voyager 2") if is_game else _("Start position")
        icono = Iconos.Voyager() if is_game else Iconos.Datos()
        QTVarios.WDialogo.__init__(self, owner, titulo, icono, "voyager")
        self.setWindowFlags(QtCore.Qt.WindowCloseButtonHint | QtCore.Qt.Window | QtCore.Qt.WindowStaysOnTopHint)

        self.is_game = is_game
        self.game = game
        self.resultado = None

        self.wPos = WPosicion(self, is_game, game)
        self.wPGN = WPGN(self, game)

        ly = Colocacion.V().control(self.wPos).control(self.wPGN).margen(0)
        self.setLayout(ly)

        self.ponModo(MODO_PARTIDA if self.is_game else MODO_POSICION)

        self.restore_video(siTam=False)
Ejemplo n.º 24
0
    def __init__(self, owner, procesador):
        QtGui.QWidget.__init__(self)

        self.owner = owner

        # Tree
        self.tree = TreeMoves(owner, procesador)

        # ToolBar
        self.tb = Controles.TBrutina(self, siTexto=False, tamIcon=16)
        self.tb.new( _("Open new branch"), Iconos.Mas(), self.rama )
        self.tb.new( _("Show") + "/" + _("Hide"), Iconos.Mostrar(), self.mostrar )
        self.tb.new( _("Rating"), self.tree.iconoValoracion(3), self.valorar )
        self.tb.new( _("Analyze"), Iconos.Analizar(), self.analizar )
        self.tb.new( _("Comments"), Iconos.ComentarioEditar(), self.comentario )
        self.tb.new( _("Variants"), Iconos.Variantes(), self.variantes )

        layout = Colocacion.V().control(self.tb).control(self.tree).margen(1)

        self.setLayout(layout)
Ejemplo n.º 25
0
    def __init__(self, owner, is_game, partida):

        titulo = _("Voyager 2") if is_game else _("Start position")
        icono = Iconos.Voyager() if is_game else Iconos.Datos()
        super().__init__(parent=owner, titulo=titulo, icono=icono, extparam="voyager")
        self.setWindowFlags(QtCore.Qt.Window | QtCore.Qt.WindowStaysOnTopHint)

        self.is_game = is_game
        self.partida = partida
        self.resultado = None

        self.wPos = WPosicion(self, is_game, partida)
        self.wPGN = WPGN(self, partida)

        ly = Colocacion.V().control(self.wPos).control(self.wPGN).margen(0)
        self.setLayout(ly)

        self.ponModo(MODO_PARTIDA if self.is_game else MODO_POSICION)

        self.recuperarVideo(siTam=False)
Ejemplo n.º 26
0
    def __init__(self, main_window, tactica, icono):

        QTVarios.WDialogo.__init__(self, main_window, tactica.title, icono, "histoTacticas")

        self.li_histo = tactica.historico()
        self.tactica = tactica
        self.resultado = None

        # Historico
        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("REFERENCE", _("Reference"), 120, centered=True)
        o_columns.nueva("FINICIAL", _("Start date"), 120, centered=True)
        o_columns.nueva("FFINAL", _("End date"), 120, centered=True)
        o_columns.nueva("TIME", "%s - %s:%s" % (_("Days"), _("Hours"), _("Minutes")), 120, centered=True)
        o_columns.nueva("POSICIONES", _("Num. puzzles"), 100, centered=True)
        o_columns.nueva("SECONDS", _("Working time"), 100, centered=True)
        o_columns.nueva("ERRORS", _("Errors"), 100, centered=True)
        self.ghistorico = Grid.Grid(self, o_columns, siSelecFilas=True, siSeleccionMultiple=True)
        self.ghistorico.setMinimumWidth(self.ghistorico.anchoColumnas() + 20)

        # Tool bar
        li_acciones = (
            (_("Close"), Iconos.MainMenu(), "terminar"),
            (_("Train"), Iconos.Empezar(), "entrenar"),
            (_("New"), Iconos.Nuevo(), "nuevo"),
            (_("Remove"), Iconos.Borrar(), "borrar"),
        )
        self.tb = Controles.TB(self, li_acciones)
        accion = "nuevo" if tactica.finished() else "entrenar"
        self.pon_toolbar("terminar", accion, "borrar")

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.ghistorico).margen(3)

        self.setLayout(ly)

        self.register_grid(self.ghistorico)
        self.restore_video(siTam=False)

        self.ghistorico.gotop()
    def __init__(self, procesador, dbop):
        self.training = dbop.training()
        self.ligames = self.training["LIGAMES_STATIC"]
        self.num_games = len(self.ligames)
        self.elems_fila = 10
        if self.num_games < self.elems_fila:
            self.elems_fila = self.num_games
        self.num_filas = (self.num_games-1) / self.elems_fila + 1
        self.seleccionado = None

        titulo = "%s - %s" % (_("Opening lines"), _("Static training"))

        extparam = "openlines_static_%s" % dbop.nomFichero

        QTVarios.WDialogo.__init__(self, procesador.pantalla, titulo, Iconos.TrainStatic(), extparam)

        lb = Controles.LB(self,  dbop.gettitle())
        lb.ponFondoN("#BDDBE8").alinCentrado().ponTipoLetra(puntos=14)

        # Toolbar
        tb = QTVarios.LCTB(self)
        tb.new(_("Close"), Iconos.MainMenu(), self.terminar)

        # Lista
        ancho = 42
        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("FILA", "", 36, siCentrado=True)
        for x in range(self.elems_fila):
            oColumnas.nueva("COL%d" % x, "%d" % (x+1,), ancho, siCentrado=True, edicion=Delegados.PmIconosWeather())

        self.grid = Grid.Grid(self, oColumnas, altoFila=ancho, background="white")
        self.grid.setAlternatingRowColors(False)
        self.grid.tipoLetra(puntos=10, peso=500)
        nAnchoPgn = self.grid.anchoColumnas() + 20
        self.grid.setMinimumWidth(nAnchoPgn)

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

        alto = self.num_filas*ancho + 146
        self.recuperarVideo(siTam=True, altoDefecto=alto, anchoDefecto=nAnchoPgn)
Ejemplo n.º 28
0
    def __init__(self, w_parent, configuration, numkibitzer):
        self.kibitzers = Kibitzers.Kibitzers()
        self.kibitzer = self.kibitzers.kibitzer(numkibitzer)
        titulo = self.kibitzer.name
        icono = Iconos.Kibitzer()
        extparam = "kibitzerlive"
        QTVarios.WDialogo.__init__(self, w_parent, titulo, icono, extparam)

        self.configuration = configuration

        self.li_options = self.leeOpciones()
        self.liOriginal = self.leeOpciones()

        li_acciones = (
            (_("Save"), Iconos.Grabar(), self.grabar),
            None,
            (_("Cancel"), Iconos.Cancelar(), self.reject),
            None,
        )
        tb = Controles.TBrutina(self, li_acciones)

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("CAMPO", _("Label"), 152, siDerecha=True)
        o_columns.nueva("VALOR",
                        _("Value"),
                        390,
                        edicion=Delegados.MultiEditor(self))
        self.gridValores = Grid.Grid(self,
                                     o_columns,
                                     siSelecFilas=False,
                                     xid="val",
                                     siEditable=True)
        self.gridValores.tipoLetra(puntos=self.configuration.x_pgn_fontpoints)
        self.register_grid(self.gridValores)

        ly = Colocacion.V().control(tb).control(self.gridValores)
        self.setLayout(ly)

        self.restore_video(anchoDefecto=600, altoDefecto=400)

        self.gridValores.gotop()
    def __init__(self, procesador):

        QTVarios.WDialogo.__init__(self, procesador.pantalla, _("Expeditions to the Everest"), Iconos.Trekking(),
                                   "everestBase")

        self.procesador = procesador
        self.configuracion = procesador.configuracion

        self.db = Everest.Expeditions(self.configuracion)

        self.selected = None

        oColumnas = Columnas.ListaColumnas()
        oColumnas.nueva("NAME", _("Expedition"), 120, siCentrado=True)
        oColumnas.nueva("DATE_INIT", _("Start date"), 120, siCentrado=True)
        oColumnas.nueva("DATE_END", _("Final date"), 100, siCentrado=True)
        oColumnas.nueva("NUM_GAMES", _("Games"), 80, siCentrado=True)
        oColumnas.nueva("TIMES", _("Time"), 120, siCentrado=True)
        oColumnas.nueva("TOLERANCE", _("Tolerance"), 90, siCentrado=True)
        oColumnas.nueva("TRIES", _("Tries"), 90, siCentrado=True)
        self.grid = Grid.Grid(self, oColumnas, siSelecFilas=True, siSeleccionMultiple=True)
        self.grid.setMinimumWidth(self.grid.anchoColumnas() + 20)

        liAcciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar), None,
            (_("Start"), Iconos.Empezar(), self.start), None,
            (_("New"), Iconos.Nuevo(), self.nuevo), None,
            (_("Remove"), Iconos.Borrar(), self.borrar), None,
        )
        self.tb = QTVarios.LCTB(self, liAcciones)

        # Colocamos
        lyTB = Colocacion.H().control(self.tb).margen(0)
        ly = Colocacion.V().otro(lyTB).control(self.grid).margen(3)

        self.setLayout(ly)

        self.registrarGrid(self.grid)
        self.recuperarVideo(siTam=False)

        self.grid.gotop()
Ejemplo n.º 30
0
    def __init__(self, procesador):

        self.procesador = procesador
        self.configuracion = procesador.configuracion
        self.resultado = None
        self.db = UtilSQL.DictSQL(self.configuracion.ficheroAnotar)
        self.lista = self.db.keys(True, True)
        self.resultado = None

        QTVarios.WDialogo.__init__(
            self, procesador.main_window, _("Writing down moves of a game"), Iconos.Write(), "annotateagame"
        )

        o_columns = Columnas.ListaColumnas()
        o_columns.nueva("DATE", _("Date"), 110)
        o_columns.nueva("COLOR", _("Color"), 80, centered=True)
        o_columns.nueva("GAME", _("Game"), 280)
        o_columns.nueva("MOVES", _("Moves"), 80, centered=True)
        o_columns.nueva("TIME", _("Avg time"), 80, centered=True)
        o_columns.nueva("ERRORS", _("Errors"), 80, centered=True)
        o_columns.nueva("HINTS", _("Hints"), 80, centered=True)
        self.glista = Grid.Grid(self, o_columns, siSelecFilas=True, siSeleccionMultiple=True)

        li_acciones = (
            (_("Close"), Iconos.MainMenu(), self.terminar),
            None,
            (_("New"), Iconos.Nuevo(), self.new),
            None,
            (_("Repeat"), Iconos.Copiar(), self.repetir),
            None,
            (_("Remove"), Iconos.Borrar(), self.borrar),
            None,
        )
        tb = Controles.TBrutina(self, li_acciones)

        ly = Colocacion.V().control(tb).control(self.glista).margen(4)

        self.setLayout(ly)

        self.register_grid(self.glista)
        self.restore_video(anchoDefecto=self.glista.anchoColumnas() + 20)