def __init__(self, wparent, partida): self.partida = partida self.wparent = wparent self.configuracion = configuracion = VarGen.configuracion QtGui.QWidget.__init__(self, wparent) liAcciones = ( (_("Save"), Iconos.Grabar(), self.save), None, (_("Cancel"), Iconos.Cancelar(), self.wparent.cancelar), None, (_("Start position"), Iconos.Datos(), self.inicial), None, (_("Clear"), Iconos.Borrar(), self.limpia), None, (_("Take back"), Iconos.Atras(), self.atras), None, ) self.tb = Controles.TBrutina(self, liAcciones, siTexto=False, tamIcon=20) confTablero = configuracion.confTablero("VOYAGERPGN", 24) self.tablero = Tablero.Tablero(self, confTablero) self.tablero.crea() self.tablero.ponMensajero(self.mueveHumano) Delegados.generaPM(self.tablero.piezas) oColumnas = Columnas.ListaColumnas() oColumnas.nueva("NUMERO", _("N."), 35, siCentrado=True) self.siFigurinesPGN = configuracion.figurinesPGN nAnchoColor = (self.tablero.ancho - 35 - 20) / 2 oColumnas.nueva("BLANCAS", _("White"), nAnchoColor, edicion=Delegados.EtiquetaPGN( True if self.siFigurinesPGN else None)) oColumnas.nueva("NEGRAS", _("Black"), nAnchoColor, edicion=Delegados.EtiquetaPGN( False if self.siFigurinesPGN else None)) self.pgn = Grid.Grid(self, oColumnas, siCabeceraMovible=False, siSelecFilas=True) self.pgn.setMinimumWidth(self.tablero.ancho) ly = Colocacion.V().control(self.tb).control(self.tablero) ly.control(self.pgn) ly.margen(1) self.setLayout(ly) self.tablero.ponPosicion(self.partida.ultPosicion) self.siguienteJugada()
def __init__(self, wparent, game): self.game = game self.wparent = wparent self.configuration = configuration = Code.configuration QtWidgets.QWidget.__init__(self, wparent) li_acciones = ( (_("Save"), Iconos.Grabar(), self.save), None, (_("Cancel"), Iconos.Cancelar(), self.wparent.cancelar), None, (_("Start position"), Iconos.Datos(), self.inicial), None, (_("Clear"), Iconos.Borrar(), self.limpia), None, (_("Take back"), Iconos.Atras(), self.atras), None, ) self.tb = Controles.TBrutina(self, li_acciones, with_text=False, icon_size=20) config_board = configuration.config_board("VOYAGERPGN", 24) self.board = Board.Board(self, config_board) self.board.crea() self.board.set_dispatcher(self.player_has_moved) Delegados.generaPM(self.board.piezas) o_columns = Columnas.ListaColumnas() o_columns.nueva("NUMBER", _("N."), 35, centered=True) self.si_figurines_pgn = configuration.x_pgn_withfigurines nAnchoColor = (self.board.ancho - 35 - 20) // 2 o_columns.nueva("WHITE", _("White"), nAnchoColor, edicion=Delegados.EtiquetaPGN( True if self.si_figurines_pgn else None)) o_columns.nueva("BLACK", _("Black"), nAnchoColor, edicion=Delegados.EtiquetaPGN( False if self.si_figurines_pgn else None)) self.pgn = Grid.Grid(self, o_columns, siCabeceraMovible=False, siSelecFilas=True) self.pgn.setMinimumWidth(self.board.ancho) ly = Colocacion.V().control(self.tb).control(self.board) ly.control(self.pgn) ly.margen(1) self.setLayout(ly) self.board.set_position(self.game.last_position) self.play_next_move()
def xcol(): oColumnas = Columnas.ListaColumnas() oColumnas.nueva("NUM", _("N."), 50, siCentrado=True) oColumnas.nueva("MOVE", _("Move"), 120, siCentrado=True, edicion=Delegados.EtiquetaPGN(True, True, True)) oColumnas.nueva("BEST", _("Best move"), 120, siCentrado=True, edicion=Delegados.EtiquetaPGN(True, True, True)) oColumnas.nueva("DIF", _("Difference"), 80, siCentrado=True) oColumnas.nueva("PORC", "%", 80, siCentrado=True) oColumnas.nueva("ELO", _("Elo"), 80, siCentrado=True) return oColumnas
def __init__(self, owner, um): super(WMuestra, self).__init__(owner) self.um = um self.owner = owner self.time_engine = um.time_engine() self.time_label = um.time_label() self.tablero = owner.tablero self.lbMotorM = Controles.LB( self, self.time_engine).alinCentrado().ponTipoLetra(puntos=9, peso=75) self.lbTiempoM = Controles.LB( self, self.time_label).alinCentrado().ponTipoLetra(puntos=9, peso=75) self.dicFonts = {True: "blue", False: "grey"} self.btCancelar = Controles.PB(self, "", self.cancelar).ponIcono(Iconos.X()) self.lbPuntuacion = owner.lbPuntuacion self.lbMotor = owner.lbMotor self.lbTiempo = owner.lbTiempo self.lbPGN = owner.lbPGN self.list_rm_name = um.list_rm_name # rm, name, centipawns self.siTiempoActivo = False self.colorNegativo = QTUtil.qtColorRGB(255, 0, 0) self.colorImpares = QTUtil.qtColorRGB(231, 244, 254) o_columns = Columnas.ListaColumnas() self.si_figurines_pgn = Code.configuracion.x_pgn_withfigurines o_columns.nueva( "JUGADAS", "%d %s" % (len(self.list_rm_name), _("Moves")), 120, centered=True, edicion=Delegados.EtiquetaPGN( um.move.is_white() if self.si_figurines_pgn else None), ) self.wrm = Grid.Grid(self, o_columns, siLineas=False) self.wrm.tipoLetra(puntos=Code.configuracion.x_pgn_fontpoints) nAncho = self.wrm.anchoColumnas() + 20 self.wrm.setFixedWidth(nAncho) self.wrm.goto(self.um.pos_selected, 0) # Layout ly2 = Colocacion.H().relleno().control( self.lbTiempoM).relleno().control(self.btCancelar) layout = Colocacion.V().control(self.lbMotorM).otro(ly2).control( self.wrm) self.setLayout(layout) self.wrm.setFocus()
def __init__(self, procesador, dbSTAT): QtGui.QWidget.__init__(self) self.dbSTAT = dbSTAT self.liMoves = [] self.procesador = procesador self.configuracion = procesador.configuracion self.siFigurinesPGN = self.configuracion.figurinesPGN self.orden = ["games", False] # Grid oColumnas = Columnas.ListaColumnas() oColumnas.nueva("numero", _("N."), 35, siCentrado=True) self.delegadoMove = Delegados.EtiquetaPGN( True if self.siFigurinesPGN else None) oColumnas.nueva("move", _("Move"), 60, edicion=self.delegadoMove) dicTipos = { "t": Iconos.pmTransposition(), } oColumnas.nueva("trans", "", 28, edicion=Delegados.PmIconosBMT(dicIconos=dicTipos)) oColumnas.nueva("games", _("Games"), 70, siDerecha=True) oColumnas.nueva("pgames", "% " + _("Games"), 70, siDerecha=True, siCentrado=True) oColumnas.nueva("win", _("Win"), 70, siDerecha=True) oColumnas.nueva("draw", _("Draw"), 70, siDerecha=True) oColumnas.nueva("lost", _("Lost"), 70, siDerecha=True) oColumnas.nueva("pwin", "% " + _("Win"), 60, siDerecha=True) oColumnas.nueva("pdraw", "% " + _("Draw"), 60, siDerecha=True) oColumnas.nueva("plost", "% " + _("Lost"), 60, siDerecha=True) oColumnas.nueva("pdrawwin", "%% %s" % _("W+D"), 60, siDerecha=True) oColumnas.nueva("pdrawlost", "%% %s" % _("L+D"), 60, siDerecha=True) self.grid = Grid.Grid(self, oColumnas, xid="summarybase", siSelecFilas=True) self.grid.tipoLetra(puntos=self.configuracion.puntosPGN) self.grid.ponAltoFila(self.configuracion.altoFilaPGN) layout = Colocacion.V() layout.control(self.grid) layout.margen(1) self.setLayout(layout) self.qtColor = (QTUtil.qtColorRGB(221, 255, 221), QTUtil.qtColorRGB(247, 247, 247), QTUtil.qtColorRGB(255, 217, 217)) self.qtColorTotales = QTUtil.qtColorRGB(170, 170, 170)
def __init__(self, owner, um): super(WMuestra, self).__init__(owner) self.um = um self.owner = owner self.etiquetaMotor = um.etiquetaMotor() self.etiquetaTiempo = um.etiquetaTiempo() self.tablero = owner.tablero self.lbMotorM = Controles.LB( self, self.etiquetaMotor).alinCentrado().ponTipoLetra(puntos=9, peso=75) self.lbTiempoM = Controles.LB( self, self.etiquetaTiempo).alinCentrado().ponTipoLetra(puntos=9, peso=75) self.dicFonts = {True: "blue", False: "grey"} self.btCancelar = Controles.PB(self, "", self.cancelar).ponIcono(Iconos.X()) self.lbPuntuacion = owner.lbPuntuacion self.lbMotor = owner.lbMotor self.lbTiempo = owner.lbTiempo self.lbPGN = owner.lbPGN self.listaRM = um.listaRM self.siTiempoActivo = False self.colorNegativo = QTUtil.qtColorRGB(255, 0, 0) self.colorImpares = QTUtil.qtColorRGB(231, 244, 254) oColumnas = Columnas.ListaColumnas() self.siFigurinesPGN = VarGen.configuracion.figurinesPGN oColumnas.nueva( "JUGADAS", "%d %s" % (len(self.listaRM), _("Moves")), 120, siCentrado=True, edicion=Delegados.EtiquetaPGN( um.jg.siBlancas() if self.siFigurinesPGN else None)) self.wrm = Grid.Grid(self, oColumnas, siLineas=False) self.wrm.tipoLetra(puntos=VarGen.configuracion.puntosPGN) nAncho = self.wrm.anchoColumnas() + 20 self.wrm.setFixedWidth(nAncho) self.wrm.goto(self.um.posElegida, 0) # Layout ly2 = Colocacion.H().relleno().control( self.lbTiempoM).relleno().control(self.btCancelar) layout = Colocacion.V().control(self.lbMotorM).otro(ly2).control( self.wrm) self.setLayout(layout) self.wrm.setFocus()
def __init__(self, procesador, db_stat): QtWidgets.QWidget.__init__(self) self.db_stat = db_stat self.liMoves = [] self.procesador = procesador self.configuration = procesador.configuration self.si_figurines_pgn = self.configuration.x_pgn_withfigurines self.orden = ["games", False] # Grid o_columns = Columnas.ListaColumnas() o_columns.nueva("number", _("N."), 35, centered=True) self.delegadoMove = Delegados.EtiquetaPGN( True if self.si_figurines_pgn else None) o_columns.nueva("move", _("Move"), 60, edicion=self.delegadoMove) o_columns.nueva("games", _("Games"), 70, siDerecha=True) o_columns.nueva("pgames", "% " + _("Games"), 70, siDerecha=True, centered=True) o_columns.nueva("win", _("Win"), 70, siDerecha=True) o_columns.nueva("draw", _("Draw"), 70, siDerecha=True) o_columns.nueva("lost", _("Lost"), 70, siDerecha=True) o_columns.nueva("pwin", "% " + _("Win"), 60, siDerecha=True) o_columns.nueva("pdraw", "% " + _("Draw"), 60, siDerecha=True) o_columns.nueva("plost", "% " + _("Lost"), 60, siDerecha=True) o_columns.nueva("pdrawwin", "%% %s" % _("W+D"), 60, siDerecha=True) o_columns.nueva("pdrawlost", "%% %s" % _("L+D"), 60, siDerecha=True) self.grid = Grid.Grid(self, o_columns, xid="summarybase", siSelecFilas=True) self.grid.tipoLetra(puntos=self.configuration.x_pgn_fontpoints) self.grid.ponAltoFila(self.configuration.x_pgn_rowheight) layout = Colocacion.V() layout.control(self.grid) layout.margen(1) self.setLayout(layout) self.qtColor = ( QTUtil.qtColorRGB(221, 255, 221), QTUtil.qtColorRGB(247, 247, 247), QTUtil.qtColorRGB(255, 217, 217), ) self.qtColorTotales = QTUtil.qtColorRGB(170, 170, 170)
def creaBloqueInformacion(self): configuration = self.manager.configuration width_pgn = configuration.x_pgn_width with_each_color = (width_pgn - 52 - 24) // 2 nAnchoLabels = max(int((width_pgn - 3) // 2), 140) # # Pgn o_columns = Columnas.ListaColumnas() o_columns.nueva("NUMBER", _("N."), 52, centered=True) si_figurines_pgn = configuration.x_pgn_withfigurines o_columns.nueva( "WHITE", _("White"), with_each_color, edicion=Delegados.EtiquetaPGN(True if si_figurines_pgn else None)) o_columns.nueva( "BLACK", _("Black"), with_each_color, edicion=Delegados.EtiquetaPGN(False if si_figurines_pgn else None)) self.pgn = Grid.Grid(self, o_columns, siCabeceraMovible=False) self.pgn.setMinimumWidth(width_pgn) self.pgn.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.pgn.tipoLetra(puntos=configuration.x_pgn_fontpoints) self.pgn.ponAltoFila(configuration.x_pgn_rowheight) self.pgn.set_right_button_without_rows(True) # # Blancas y negras f = Controles.TipoLetra(puntos=configuration.x_sizefont_infolabels + 2, peso=75) self.lb_player_white = Controles.LB(self).anchoFijo( nAnchoLabels).align_center().ponFuente(f).set_wrap() style = "QWidget { border-style: groove; border-width: 2px; border-color: Gray; padding: 4px 4px 4px 4px;background-color:%s;color:%s;}" self.lb_player_white.setStyleSheet(style % ("white", "black")) self.lb_player_black = Controles.LB(self).anchoFijo( nAnchoLabels).align_center().ponFuente(f).set_wrap() self.lb_player_black.setStyleSheet(style % ("black", "white")) # # Capturas n_alto_fijo = 3 * (configuration.x_sizefont_infolabels + 2) self.lb_capt_white = Controles.LB(self).anchoFijo( nAnchoLabels).set_wrap().altoFijo(n_alto_fijo) style = "QWidget { border-style: groove; border-width: 1px; border-color: LightGray; padding: 2px 0px 2px 0px;}" self.lb_capt_white.setStyleSheet(style) self.lb_capt_black = Controles.LB(self).anchoFijo( nAnchoLabels).set_wrap().altoFijo(n_alto_fijo) self.lb_capt_black.setStyleSheet(style) # Relojes f = Controles.TipoLetra("Arial Black", puntos=26, peso=75) def lbReloj(): lb = (Controles.LB( self, "00:00").ponFuente(f).align_center().set_foreground_backgound( "#076C9F", "#EFEFEF").anchoMinimo(nAnchoLabels)) lb.setFrameStyle(QtWidgets.QFrame.Box | QtWidgets.QFrame.Raised) return lb self.lb_clock_white = lbReloj() self.lb_clock_black = lbReloj() f = Controles.TipoLetra(puntos=12) # Boton de tutor activo self.bt_active_tutor = Controles.PB(self, "", rutina=self.cambiaSiActivarTutor, plano=False).ponFuente(f) # Rotulos de informacion f = Controles.TipoLetra(puntos=configuration.x_sizefont_infolabels) self.lbRotulo1 = Controles.LB(self).set_wrap().ponFuente(f) self.lbRotulo2 = Controles.LB(self).set_wrap().ponFuente(f) f9 = Controles.TipoLetra(puntos=9) self.lbRotulo3 = Controles.LB(self).set_wrap().ponFuente(f9) self.lbRotulo3.setStyleSheet("*{ border: 1px solid darkgray }") self.lbRotulo3.altoFijo(48) # Lo escondemos self.lb_player_white.hide() self.lb_player_black.hide() self.lb_capt_white.hide() self.lb_capt_black.hide() self.lb_clock_white.hide() self.lb_clock_black.hide() self.lb_capt_white.hide() self.lb_capt_black.hide() self.pgn.hide() self.bt_active_tutor.hide() self.lbRotulo1.hide() self.lbRotulo2.hide() self.lbRotulo3.hide() # Layout # Arriba ly_color = Colocacion.G() ly_color.controlc(self.lb_player_white, 0, 0).controlc(self.lb_player_black, 0, 1) ly_color.controlc(self.lb_clock_white, 2, 0).controlc(self.lb_clock_black, 2, 1) # Abajo ly_capturas = Colocacion.H().control(self.lb_capt_white).control( self.lb_capt_black) ly_abajo = Colocacion.V() ly_abajo.setSizeConstraint(ly_abajo.SetFixedSize) ly_abajo.otro(ly_capturas) ly_abajo.control(self.bt_active_tutor) ly_abajo.control(self.lbRotulo1).control(self.lbRotulo2).control( self.lbRotulo3) ly_v = Colocacion.V().otro(ly_color).control(self.pgn) ly_v.otro(ly_abajo) return ly_v
def __init__(self, procesador, winBookGuide, dbGames, siMoves=True): QtGui.QWidget.__init__(self) self.winBookGuide = winBookGuide self.dbGames = dbGames # <--setdbGames self.bookGuide = winBookGuide.bookGuide self.infoMove = None # <-- setInfoMove self.wmoves = None # <-- setwmoves self.fenM2 = None self.liMoves = [] self.analisisMRM = None self.siMoves = siMoves self.procesador = procesador self.configuracion = procesador.configuracion self.leeConfig() self.aperturasStd = AperturasStd.ListaAperturasStd( self.configuracion, False, False) self.siFigurinesPGN = self.configuracion.figurinesPGN self.pvBase = "" self.orden = ["games", False] self.lbName = Controles.LB( self, "").ponWrap().alinCentrado().ponColorFondoN( "white", "#4E5A65").ponTipoLetra(puntos=10 if siMoves else 16) if not siMoves: self.lbName.hide() # Grid oColumnas = Columnas.ListaColumnas() oColumnas.nueva("numero", _("N."), 35, siCentrado=True) self.delegadoMove = Delegados.EtiquetaPGN( True if self.siFigurinesPGN else None) oColumnas.nueva("move", _("Move"), 60, edicion=self.delegadoMove) dicTipos = { "t": Iconos.pmTransposition(), } oColumnas.nueva("trans", "", 24, edicion=Delegados.PmIconosBMT(dicIconos=dicTipos)) oColumnas.nueva("analisis", _("Analysis"), 60, siDerecha=True) oColumnas.nueva("games", _("Games"), 70, siDerecha=True) oColumnas.nueva("pgames", "% " + _("Games"), 70, siDerecha=True, siCentrado=True) oColumnas.nueva("win", _("Win"), 70, siDerecha=True) oColumnas.nueva("draw", _("Draw"), 70, siDerecha=True) oColumnas.nueva("lost", _("Lost"), 70, siDerecha=True) oColumnas.nueva("pwin", "% " + _("Win"), 60, siDerecha=True) oColumnas.nueva("pdraw", "% " + _("Draw"), 60, siDerecha=True) oColumnas.nueva("plost", "% " + _("Lost"), 60, siDerecha=True) oColumnas.nueva("pdrawwin", "%% %s" % _("W+D"), 60, siDerecha=True) oColumnas.nueva("pdrawlost", "%% %s" % _("L+D"), 60, siDerecha=True) self.grid = Grid.Grid(self, oColumnas, xid="summary", siSelecFilas=True) self.grid.tipoLetra(puntos=self.configuracion.puntosPGN) self.grid.ponAltoFila(self.configuracion.altoFilaPGN) # ToolBar liAcciones = [ (_("Close"), Iconos.MainMenu(), winBookGuide.terminar), None, (_("Start position"), Iconos.Inicio(), self.inicio), None, (_("Previous"), Iconos.AnteriorF(), self.anterior), (_("Next"), Iconos.SiguienteF(), self.siguiente), None, (_("Analyze"), Iconos.Analizar(), self.analizar), None, (_("Rebuild"), Iconos.Reindexar(), self.reindexar), None, (_("Config"), Iconos.Configurar(), self.config), None, ] if siMoves: liAcciones.append( (_("Create a new guide based in these games") if siMoves else _("Create"), Iconos.BookGuide(), self.createGuide)) liAcciones.append(None) self.tb = Controles.TBrutina(self, liAcciones, tamIcon=20, siTexto=not self.siMoves) if self.siMoves: self.tb.vertical() layout = Colocacion.V().control(self.lbName) if not self.siMoves: layout.control(self.tb) layout.control(self.grid) if self.siMoves: layout = Colocacion.H().control(self.tb).otro(layout) layout.margen(1) self.setLayout(layout) self.qtColor = (QTUtil.qtColorRGB(221, 255, 221), QTUtil.qtColorRGB(247, 247, 247), QTUtil.qtColorRGB(255, 217, 217)) self.qtColorTotales = QTUtil.qtColorRGB(170, 170, 170)
def crea_bloque_informacion(self): configuracion = Code.configuracion n_ancho_pgn = configuracion.x_pgn_width n_ancho_color = (n_ancho_pgn - 52 - 24) // 2 n_ancho_labels = max(int((n_ancho_pgn - 3) // 2), 140) # # Pgn o_columnas = Columnas.ListaColumnas() o_columnas.nueva("NUMERO", _("N."), 52, centered=True) si_figurines_pgn = configuracion.x_pgn_withfigurines o_columnas.nueva( "BLANCAS", _("White"), n_ancho_color, edicion=Delegados.EtiquetaPGN(True if si_figurines_pgn else None)) o_columnas.nueva( "NEGRAS", _("Black"), n_ancho_color, edicion=Delegados.EtiquetaPGN(False if si_figurines_pgn else None)) self.grid_pgn = Grid.Grid(self, o_columnas, siCabeceraMovible=False) self.grid_pgn.setMinimumWidth(n_ancho_pgn) self.grid_pgn.setHorizontalScrollBarPolicy( QtCore.Qt.ScrollBarAlwaysOff) self.grid_pgn.tipoLetra(puntos=configuracion.x_pgn_fontpoints) self.grid_pgn.ponAltoFila(configuracion.x_pgn_rowheight) # # Blancas y negras f = Controles.TipoLetra(puntos=configuracion.x_sizefont_infolabels + 2, peso=75) bl, ng = "", "" alto_lb = 48 self.lb_player = {} for side in (WHITE, BLACK): self.lb_player[side] = Controles.LB( self, bl).anchoFijo(n_ancho_labels).altoFijo(alto_lb) self.lb_player[side].alinCentrado().ponFuente(f).ponWrap() self.lb_player[side].setFrameStyle(QtWidgets.QFrame.Box | QtWidgets.QFrame.Raised) self.lb_player[WHITE].ponColorFondoN("black", "white") self.lb_player[BLACK].ponColorFondoN("white", "black") # Relojes f = Controles.TipoLetra("Arial Black", puntos=26, peso=75) self.lb_reloj = {} for side in (WHITE, BLACK): self.lb_reloj[side] = (Controles.LB( self, "00:00").ponFuente(f).alinCentrado().ponColorFondoN( "#076C9F", "#EFEFEF").anchoMinimo(n_ancho_labels)) self.lb_reloj[side].setFrameStyle(QtWidgets.QFrame.Box | QtWidgets.QFrame.Raised) # Rotulos de informacion f = Controles.TipoLetra(puntos=configuracion.x_sizefont_infolabels) self.lbRotulo3 = Controles.LB(self).ponWrap().ponFuente(f) # Layout lyColor = Colocacion.G() lyColor.controlc(self.lb_player[WHITE], 0, 0).controlc(self.lb_player[BLACK], 0, 1) lyColor.controlc(self.lb_reloj[WHITE], 1, 0).controlc(self.lb_reloj[BLACK], 1, 1) # Abajo lyAbajo = Colocacion.V() lyAbajo.setSizeConstraint(lyAbajo.SetFixedSize) lyAbajo.control(self.lbRotulo3) lyV = Colocacion.V().otro(lyColor).control(self.grid_pgn) lyV.otro(lyAbajo).margen(7) return lyV
def __init__(self, procesador, wb_database, dbGames, siMoves=True): QtWidgets.QWidget.__init__(self) self.wb_database = wb_database self.dbGames = dbGames # <--setdbGames self.infoMove = None # <-- setInfoMove self.wmoves = None # <-- setwmoves self.liMoves = [] self.siMoves = siMoves self.procesador = procesador self.configuration = procesador.configuration self.wdb_analysis = WDB_Analysis.WDBAnalisis(self) self.leeConfig() self.aperturasStd = OpeningsStd.ap self.si_figurines_pgn = self.configuration.x_pgn_withfigurines self.pvBase = "" self.orden = ["games", False] self.lbName = ( Controles.LB(self, "") .set_wrap() .align_center() .set_foreground_backgound("white", "#4E5A65") .ponTipoLetra(puntos=10 if siMoves else 16) ) if not siMoves: self.lbName.hide() # Grid o_columns = Columnas.ListaColumnas() o_columns.nueva("number", _("N."), 35, centered=True) self.delegadoMove = Delegados.EtiquetaPGN(True if self.si_figurines_pgn else None) o_columns.nueva("move", _("Move"), 60, edicion=self.delegadoMove) o_columns.nueva("analysis", _("Analysis"), 60, siDerecha=True) o_columns.nueva("games", _("Games"), 70, siDerecha=True) o_columns.nueva("pgames", "% " + _("Games"), 70, siDerecha=True) o_columns.nueva("win", _("Win"), 70, siDerecha=True) o_columns.nueva("draw", _("Draw"), 70, siDerecha=True) o_columns.nueva("lost", _("Lost"), 70, siDerecha=True) o_columns.nueva("pwin", "% " + _("Win"), 60, siDerecha=True) o_columns.nueva("pdraw", "% " + _("Draw"), 60, siDerecha=True) o_columns.nueva("plost", "% " + _("Lost"), 60, siDerecha=True) o_columns.nueva("pdrawwin", "%% %s" % _("W+D"), 60, siDerecha=True) o_columns.nueva("pdrawlost", "%% %s" % _("L+D"), 60, siDerecha=True) self.grid = Grid.Grid(self, o_columns, xid="summary", siSelecFilas=True) self.grid.tipoLetra(puntos=self.configuration.x_pgn_fontpoints) self.grid.ponAltoFila(self.configuration.x_pgn_rowheight) # ToolBar li_acciones = [ (_("Start position"), Iconos.Inicio(), self.start), None, (_("Previous"), Iconos.AnteriorF(), self.anterior), (_("Next"), Iconos.SiguienteF(), self.siguiente), None, (_("Analyze"), Iconos.Analizar(), self.analizar), None, (_("Rebuild"), Iconos.Reindexar(), self.reindexar), None, (_("Config"), Iconos.Configurar(), self.config), None, ] self.tb = QTVarios.LCTB(self, li_acciones, icon_size=20, with_text=not self.siMoves) if self.siMoves: self.tb.vertical() layout = Colocacion.V().control(self.lbName) if not self.siMoves: layout.control(self.tb) layout.control(self.grid) if self.siMoves: layout = Colocacion.H().control(self.tb).otro(layout) layout.margen(1) self.setLayout(layout) self.qtColor = (QTUtil.qtColorRGB(221, 255, 221), QTUtil.qtColorRGB(247, 247, 247), QTUtil.qtColorRGB(255, 217, 217)) self.qtColorTotales = QTUtil.qtColorRGB(170, 170, 170)
def creaBloqueInformacion(self): nAnchoPgn = self.gestor.configuracion.anchoPGN nAnchoColor = (nAnchoPgn - 35 - 20) / 2 nAnchoLabels = max(int((nAnchoPgn - 3) / 2), 140) # # Pgn oColumnas = Columnas.ListaColumnas() oColumnas.nueva("NUMERO", _("N."), 35, siCentrado=True) configuracion = self.gestor.configuracion siFigurinesPGN = configuracion.figurinesPGN oColumnas.nueva( "BLANCAS", _("White"), nAnchoColor, edicion=Delegados.EtiquetaPGN(True if siFigurinesPGN else None)) oColumnas.nueva( "NEGRAS", _("Black"), nAnchoColor, edicion=Delegados.EtiquetaPGN(False if siFigurinesPGN else None)) self.pgn = Grid.Grid(self, oColumnas, siCabeceraMovible=False) self.pgn.setMinimumWidth(nAnchoPgn) self.pgn.tipoLetra(puntos=configuracion.puntosPGN) self.pgn.ponAltoFila(configuracion.altoFilaPGN) # # Blancas y negras f = Controles.TipoLetra( puntos=self.gestor.configuracion.tamFontRotulos + 2, peso=75) bl, ng = _("White"), _("Black") self.lbJugBlancas = Controles.LB(self, bl).anchoFijo( nAnchoLabels).alinCentrado().ponFuente(f).ponColorFondoN( "black", "white").ponWrap() self.lbJugNegras = Controles.LB(self, ng).anchoFijo( nAnchoLabels).alinCentrado().ponFuente(f).ponColorFondoN( "white", "black").ponWrap() self.lbJugBlancas.setFrameStyle(QtGui.QFrame.Box | QtGui.QFrame.Raised) self.lbJugNegras.setFrameStyle(QtGui.QFrame.Box | QtGui.QFrame.Raised) # Relojes f = Controles.TipoLetra("Arial Black", puntos=26, peso=75) def lbReloj(): lb = Controles.LB( self, "00:00").ponFuente(f).alinCentrado().ponColorFondoN( "#076C9F", "#EFEFEF").anchoMinimo(nAnchoLabels) lb.setFrameStyle(QtGui.QFrame.Box | QtGui.QFrame.Raised) return lb self.lbRelojBlancas = lbReloj() self.lbRelojNegras = lbReloj() # Revisando f = Controles.TipoLetra(puntos=14, peso=75) self.lbRevision = Controles.LB( self, _("Reviewing...")).alinCentrado().ponFuente(f).ponFondoN("#b3b3b3") # Ayudas self.ayudasUD = QTVarios.LCNumero(3) f = Controles.TipoLetra(puntos=12) self.lbCredito = Controles.LB(self, _("Available hints") + " : ").alinCentrado().ponFuente(f) # Boton de tutor activo self.btActivarTutor = Controles.PB( self, "", rutina=self.cambiaSiActivarTutor, plano=False) # .anchoFijo( nAnchoPgn ) # Rotulos de informacion f = Controles.TipoLetra( puntos=self.gestor.configuracion.tamFontRotulos) self.lbRotulo1 = Controles.LB(self).ponWrap().ponFuente(f) self.lbRotulo2 = Controles.LB(self).ponWrap().ponFuente(f) f9 = Controles.TipoLetra(puntos=9) self.lbRotulo3 = Controles.LB(self).ponWrap().ponFuente(f9) # self.lbRotulo1.setStyleSheet("*{ border: 1px solid darkgray }") # self.lbRotulo2.setStyleSheet("*{ border: 1px solid darkgray }") self.lbRotulo3.setStyleSheet("*{ border: 1px solid darkgray }") self.lbRotulo3.altoFijo(48) # Lo escondemos self.lbJugBlancas.hide() self.lbJugNegras.hide() self.lbRelojBlancas.hide() self.lbRelojNegras.hide() self.pgn.hide() self.lbRevision.hide() self.ayudasUD.hide() self.lbCredito.hide() self.btActivarTutor.hide() self.lbRotulo1.hide() self.lbRotulo2.hide() self.lbRotulo3.hide() # Layout # Remoto lyColor = Colocacion.G() lyColor.controlc(self.lbJugBlancas, 0, 0).controlc(self.lbJugNegras, 0, 1) lyColor.controlc(self.lbRelojBlancas, 1, 0).controlc(self.lbRelojNegras, 1, 1) # Ayudas lyAyudas = Colocacion.H().relleno().control(self.lbCredito).control( self.ayudasUD).relleno().ponSeparacion(1) # Abajo lyAbajo = Colocacion.V() lyAbajo.setSizeConstraint(lyAbajo.SetFixedSize) lyAbajo.control(self.lbRevision).otro(lyAyudas).control( self.btActivarTutor) lyAbajo.control(self.lbRotulo1).control(self.lbRotulo2).control( self.lbRotulo3) lyV = Colocacion.V().otro(lyColor).control(self.pgn) lyV.otro(lyAbajo) return lyV