def end(self, rect): if rect: self.scanner.close() desktop = QtGui.QPixmap.grabWindow( QtGui.QApplication.desktop().winId(), 0, 0, QTUtil.anchoEscritorio(), QTUtil.altoEscritorio()) selected_pixmap = desktop.copy(rect) selected_pixmap = selected_pixmap.scaled( 256, 256, transformMode=QtCore.Qt.SmoothTransformation) selected_pixmap.save(self.fich_png) else: with open(self.fich_png, "wb") as q: q.write("")
def __init__(self, procesador): super(WAbout, self).__init__(procesador.pantalla) self.setWindowTitle(_("About")) self.setWindowIcon(Iconos.Aplicacion()) self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint) self.setMaximumWidth(QTUtil.anchoEscritorio()) f = Controles.TipoLetra(puntos=10) # 0, peso=75 ) cabecera = '<span style="font-size:30pt; font-weight="700"; font-family:arial; color:#2D2B2B">%s</span><br>' % _( "Lucas Chess") cabecera += '<span style="font-size:15pt;">%s</span><br>' % _X( _("version %1"), procesador.version) cabecera += '<span style="font-size:10pt;color:2D2B2B">%s: %s</span>' % ( _("Author"), '<a href="mailto:[email protected]">Lucas Monge</a>') cabecera += ' - <a style="font-size:10pt; color:2D2B2B" href="%s">%s</a>' % ( procesador.web, procesador.web) cabecera += ' - <a style="font-size:10pt; color:2D2B2B" href="%s">Blog : Fresh news</a><br>' % ( procesador.blog, ) cabecera += '%s <a style="font-size:10pt; color:2D2B2B" href="http://www.gnu.org/copyleft/gpl.html"> GPL</a>' % _( "License") lbIco = Controles.LB(self).ponImagen(Iconos.pmAplicacion64()) lbTitulo = Controles.LB(self, cabecera) btSeguir = Controles.PB(self, _("Continue"), self.accept).ponPlano(False) # Tabs tab = Controles.Tab() tab.ponFuente(f) ib = InfoBase.ThanksTo() for n, (k, titulo) in enumerate(ib.dic.iteritems()): txt = ib.texto(k) lb = Controles.LB(self, txt) lb.ponFondoN("#F6F3EE") lb.ponFuente(f) tab.addTab(lb, titulo) lyV1 = Colocacion.H().control(lbIco).espacio(15).control( lbTitulo).relleno() layout = Colocacion.V().otro(lyV1).espacio(10).control(tab).control( btSeguir).margen(10) self.setLayout(layout)
def quit(self, ok): self.hide() if ok: self.vars.write() rect = QtCore.QRect(self.x, self.y, self.width, self.height) desktop = QtGui.QPixmap.grabWindow( QtGui.QApplication.desktop().winId(), 0, 0, QTUtil.anchoEscritorio(), QTUtil.altoEscritorio()) selected_pixmap = desktop.copy(rect) selected_pixmap = selected_pixmap.scaled( 256, 256, transformMode=QtCore.Qt.SmoothTransformation) selected_pixmap.save(self.fich_png) else: with open(self.fich_png, "wb") as q: q.write("") self.close()
def quit(self, ok): self.hide() if ok: self.vars.write() rect = QtCore.QRect(self.x, self.y, self.width, self.height) screen = QtWidgets.QApplication.primaryScreen() desktop = screen.grabWindow(0, 0, 0, QTUtil.anchoEscritorio(), QTUtil.altoEscritorio()) selected_pixmap = desktop.copy(rect) selected_pixmap = selected_pixmap.scaled( 256, 256, QtCore.Qt.IgnoreAspectRatio, QtCore.Qt.SmoothTransformation ) selected_pixmap.save(self.fich_png) else: with open(self.fich_png, "w"): pass self.close()
def leeConfBoards(self): db = UtilSQL.DictSQL(self.ficheroConfBoards) self.dic_conf_boards_pk = db.as_dictionary() if not ("BASE" in self.dic_conf_boards_pk): with open(Code.path_resource("IntFiles", "basepk.board"), "rb") as f: var = pickle.loads(f.read()) alto = QTUtil.altoEscritorio() ancho = QTUtil.anchoEscritorio() base = ancho * 950 / 1495 if alto > base: alto = base var["x_anchoPieza"] = int(alto * 8 / 100) db["BASE"] = self.dic_conf_boards_pk["BASE"] = var # with open("../resources/IntFiles/basepk.board", "wb") as f: # f.write(pickle.dumps(db["BASE"])) db.close()
def __init__(self, procesador): super(WAbout, self).__init__(procesador.pantalla) self.setWindowTitle(_("About")) self.setWindowIcon(Iconos.Aplicacion()) self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint) self.setMaximumWidth(QTUtil.anchoEscritorio()) f = Controles.TipoLetra(puntos=10) # 0, peso=75 ) cabecera = '<span style="font-size:30pt; font-weight="700"; font-family:arial; color:#2D2B2B">%s</span><br>' % _( "Lucas Chess") cabecera += '<span style="font-size:15pt;">%s</span><br>' % _X(_("version %1"), procesador.version) cabecera += '<span style="font-size:8pt;color:2D2B2B">%s</span>' % "Lucas Monge" cabecera += ' - <a style="font-size:8pt; color:2D2B2B" href="%s">%s</a>' % (procesador.web, procesador.web) cabecera += ' - <a style="font-size:8pt; color:2D2B2B" href="%s">Blog : Fresh news</a><br>' % (procesador.blog, ) cabecera += '%s <a style="font-size:8pt; color:2D2B2B" href="http://www.gnu.org/copyleft/gpl.html"> GPL</a>' % _( "License") lbIco = Controles.LB(self).ponImagen(Iconos.pmAplicacion64()) lbTitulo = Controles.LB(self, cabecera) btSeguir = Controles.PB(self, _("Continue"), self.accept).ponPlano(False) # Tabs tab = Controles.Tab() tab.ponFuente(f) ib = InfoBase.ThanksTo() for n, (k, titulo) in enumerate(ib.dic.iteritems()): txt = ib.texto(k) lb = Controles.LB(self, txt) lb.ponFondoN("Ivory") lb.ponFuente(f) tab.addTab(lb, titulo) lyV1 = Colocacion.H().control(lbIco).espacio(15).control(lbTitulo).relleno() layout = Colocacion.V().otro(lyV1).espacio(10).control(tab).control(btSeguir).margen(10) self.setLayout(layout)
def __init__(self, manager, tutor, siRival, siOpenings, is_white, siPuntos): titulo = _("Analyzing your move") icono = Iconos.Tutor() extparam = "tutor" QTVarios.WDialogo.__init__(self, manager.main_window, titulo, icono, extparam) self.tutor = tutor self.manager = manager self.respLibro = None self.siElegidaOpening = False self.x_tutor_view = manager.configuration.x_tutor_view # ~ self.setStyleSheet("QDialog,QGroupBox { background: #f0f0f0; }") f = Controles.TipoLetra(puntos=12, peso=75) flb = Controles.TipoLetra(puntos=10) flba = Controles.TipoLetra(puntos=8) ae = QTUtil.anchoEscritorio() mx = 32 if ae > 1000 else 20 config_board = Code.configuration.config_board("TUTOR", mx) # Boards def create_board(name, si=True, siLibre=True, siMas=False): if not si: return None, None, None board = Board.Board(self, config_board) board.crea() board.ponerPiezasAbajo(is_white) lytb, tb = QTVarios.lyBotonesMovimiento(self, name, siLibre, siMas=siMas) return board, lytb, tb self.boardTutor, lytbtutor, self.tbtutor = create_board("tutor") self.boardUsuario, lytbuser, self.tbuser = create_board("user") self.boardRival, lytbRival, self.tbRival = create_board( "rival", siRival) self.boardOpening, lytbOpening, self.tbOpening = create_board( "opening", siOpenings, siLibre=False) tutor.ponBoardsGUI(self.boardTutor, self.boardUsuario, self.boardRival, self.boardOpening) # Puntuaciones self.lbTutorPuntuacion = Controles.LB(self).align_center().ponFuente( flb) self.lbUsuarioPuntuacion = Controles.LB(self).align_center().ponFuente( flb) if siRival: self.lbRivalPuntuacion = Controles.LB( self).align_center().ponFuente(flb) # Openings if siOpenings: li_options = self.tutor.opcionesOpenings() self.cbOpenings = Controles.CB(self, li_options, 0) self.cbOpenings.setFont(flba) self.connect(self.cbOpenings, QtCore.SIGNAL("currentIndexChanged(int)"), self.tutor.cambiarOpening) # RM liRM = [] for n, uno in enumerate(tutor.list_rm): liRM.append((uno[1], n)) self.cbRM, self.lbRM = QTUtil2.comboBoxLB(self, liRM, liRM[0][1], _("Moves analyzed")) self.connect(self.cbRM, QtCore.SIGNAL("currentIndexChanged (int)"), tutor.cambiadoRM) lyRM = Colocacion.H().control(self.lbRM).control(self.cbRM) lyTutor = Colocacion.V().relleno().control( self.lbTutorPuntuacion).relleno() gbTutor = Controles.GB(self, _("Tutor's suggestion"), lyTutor).ponFuente(f).align_center() if siPuntos: gbTutor.to_connect(self.elegirTutor) self.lbTutorPuntuacion.setEnabled(True) lyUsuario = Colocacion.V().relleno().control( self.lbUsuarioPuntuacion).relleno() gbUsuario = Controles.GB( self, _("Your move"), lyUsuario).ponFuente(f).align_center().to_connect( self.elegirUsuario) self.lbUsuarioPuntuacion.setEnabled(True) btLibros = Controles.PB(self, _("Consult a book"), self.consultaLibro).ponPlano(False) if siRival: lyRival = Colocacion.V().relleno().control( self.lbRivalPuntuacion).relleno() gbRival = Controles.GB(self, _("Opponent's prediction"), lyRival).ponFuente(f).align_center() if siOpenings: lyOpenings = Colocacion.V().relleno().control( self.cbOpenings).relleno() gbOpenings = Controles.GB(self, _("Opening"), lyOpenings).align_center().ponFuente(f) if siPuntos: gbOpenings.to_connect(self.elegirOpening) self.cbOpenings.setEnabled(True) self.tutor.cambiarOpening(0) dicVista = { POS_TUTOR_HORIZONTAL: ((0, 1), (0, 2)), POS_TUTOR_HORIZONTAL_2_1: ((0, 1), (4, 0)), POS_TUTOR_HORIZONTAL_1_2: ((4, 0), (4, 1)), POS_TUTOR_VERTICAL: ((4, 0), (8, 0)), } usu, riv = dicVista[self.x_tutor_view] fu, cu = usu fr, cr = riv layout = Colocacion.G() layout.controlc(gbTutor, 0, 0).controlc(self.boardTutor, 1, 0).otro(lytbtutor, 2, 0).otroc(lyRM, 3, 0) layout.controlc(gbUsuario, fu, cu).controlc(self.boardUsuario, fu + 1, cu).otro(lytbuser, fu + 2, cu).controlc( btLibros, fu + 3, cu) if siRival: layout.controlc(gbRival, fr, cr).controlc(self.boardRival, fr + 1, cr).otro(lytbRival, fr + 2, cr) elif siOpenings: layout.controlc(gbOpenings, fr, cr).controlc(self.boardOpening, fr + 1, cr).otro(lytbOpening, fr + 2, cr) layout.margen(8) self.setLayout(layout) self.restore_video(siTam=False)
def __init__(self, gestor, tutor, siRival, siAperturas, siBlancas, siPuntos): titulo = _("Analyzing your move") icono = Iconos.Tutor() extparam = "tutor" QTVarios.WDialogo.__init__(self, gestor.pantalla, titulo, icono, extparam) self.tutor = tutor self.gestor0 = gestor.gestor self.respLibro = None self.siElegidaApertura = False self.vistaTutor = gestor.procesador.configuracion.vistaTutor # ~ self.setStyleSheet("QDialog,QGroupBox { background: #f0f0f0; }") f = Controles.TipoLetra(puntos=12, peso=75) flb = Controles.TipoLetra(puntos=10) flba = Controles.TipoLetra(puntos=8) ae = QTUtil.anchoEscritorio() mx = 32 if ae > 1000 else 20 confTablero = VarGen.configuracion.confTablero("TUTOR", mx) # Tableros def creaTablero(nombre, si=True, siLibre=True, siMas=False): if not si: return None, None, None tablero = Tablero.Tablero(self, confTablero) tablero.crea() tablero.ponerPiezasAbajo(siBlancas) lytb, tb = QTVarios.lyBotonesMovimiento(self, nombre, siLibre, siMas=siMas) return tablero, lytb, tb self.tableroTutor, lytbTutor, self.tbTutor = creaTablero("tutor") self.tableroUsuario, lytbUsuario, self.tbUsuario = creaTablero( "usuario") self.tableroRival, lytbRival, self.tbRival = creaTablero( "rival", siRival) self.tableroApertura, lytbApertura, self.tbApertura = creaTablero( "apertura", siAperturas, siLibre=False) tutor.ponTablerosGUI(self.tableroTutor, self.tableroUsuario, self.tableroRival, self.tableroApertura) # Puntuaciones self.lbTutorPuntuacion = Controles.LB(self).alinCentrado().ponFuente( flb) self.lbUsuarioPuntuacion = Controles.LB(self).alinCentrado().ponFuente( flb) if siRival: self.lbRivalPuntuacion = Controles.LB( self).alinCentrado().ponFuente(flb) # Aperturas if siAperturas: liOpciones = self.tutor.opcionesAperturas() self.cbAperturas = Controles.CB(self, liOpciones, 0) self.cbAperturas.setFont(flba) self.connect(self.cbAperturas, QtCore.SIGNAL("currentIndexChanged(int)"), self.tutor.cambiarApertura) # RM liRM = [] for n, uno in enumerate(tutor.listaRM): liRM.append((uno[1], n)) self.cbRM, self.lbRM = QTUtil2.comboBoxLB(self, liRM, liRM[0][1], _("Moves analyzed")) self.connect(self.cbRM, QtCore.SIGNAL("currentIndexChanged (int)"), tutor.cambiadoRM) lyRM = Colocacion.H().control(self.lbRM).control(self.cbRM) lyTutor = Colocacion.V().relleno().control( self.lbTutorPuntuacion).relleno() gbTutor = Controles.GB(self, _("Tutor's suggestion"), lyTutor).ponFuente(f).alinCentrado() if siPuntos: gbTutor.conectar(self.elegirTutor) self.lbTutorPuntuacion.setEnabled(True) lyUsuario = Colocacion.V().relleno().control( self.lbUsuarioPuntuacion).relleno() gbUsuario = Controles.GB( self, _("Your move"), lyUsuario).ponFuente(f).alinCentrado().conectar(self.elegirUsuario) self.lbUsuarioPuntuacion.setEnabled(True) btLibros = Controles.PB(self, _("Consult a book"), self.consultaLibro).ponPlano(False) if siRival: lyRival = Colocacion.V().relleno().control( self.lbRivalPuntuacion).relleno() gbRival = Controles.GB(self, _("Opponent's prediction"), lyRival).ponFuente(f).alinCentrado() if siAperturas: lyAperturas = Colocacion.V().relleno().control( self.cbAperturas).relleno() gbAperturas = Controles.GB(self, _("Opening"), lyAperturas).alinCentrado().ponFuente(f) if siPuntos: gbAperturas.conectar(self.elegirApertura) self.cbAperturas.setEnabled(True) self.tutor.cambiarApertura(0) dicVista = { kTutorH: ((0, 1), (0, 2)), kTutorH2_1: ((0, 1), (4, 0)), kTutorH1_2: ((4, 0), (4, 1)), kTutorV: ((4, 0), (8, 0)) } usu, riv = dicVista[self.vistaTutor] fu, cu = usu fr, cr = riv layout = Colocacion.G() layout.controlc(gbTutor, 0, 0).controlc(self.tableroTutor, 1, 0).otro(lytbTutor, 2, 0).otroc(lyRM, 3, 0) layout.controlc(gbUsuario, fu, cu).controlc(self.tableroUsuario, fu + 1, cu).otro( lytbUsuario, fu + 2, cu).controlc(btLibros, fu + 3, cu) if siRival: layout.controlc(gbRival, fr, cr).controlc(self.tableroRival, fr + 1, cr).otro(lytbRival, fr + 2, cr) elif siAperturas: layout.controlc(gbAperturas, fr, cr).controlc(self.tableroApertura, fr + 1, cr).otro(lytbApertura, fr + 2, cr) layout.margen(8) self.setLayout(layout) self.recuperarVideo(siTam=False)
def __init__(self, procesador): super(WAbout, self).__init__(procesador.main_window) # gen_web_bootstrap() self.setWindowTitle(_("About")) self.setWindowIcon(Iconos.Aplicacion64()) self.setWindowFlags(QtCore.Qt.WindowCloseButtonHint | QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint) self.setMaximumWidth(QTUtil.anchoEscritorio()) f = Controles.TipoLetra(puntos=10) # 0, peso=75 ) head = '<span style="font-size:30pt; font-weight="700"; font-family:arial; color:#2D2B2B">%s</span><br>' % Code.lucas_chess head += '<span style="font-size:15pt;">%s</span><br>' % _X( _("version %1"), procesador.version) head += '<span style="font-size:10pt;color:2D2B2B">%s: %s</span>' % (_( "Author"), '<a href="mailto:[email protected]">Lucas Monge</a>') head += ' - <a style="font-size:10pt; color:2D2B2B" href="%s">%s</a>' % ( procesador.web, procesador.web) head += ' - <a style="font-size:10pt; color:2D2B2B" href="%s">Blog : Fresh news</a>' % ( procesador.blog, ) head += ' - <a style="font-size:10pt; color:2D2B2B" href="%s">Sources: github</a><br>' % ( procesador.github, ) head += '%s <a style="font-size:10pt; color:2D2B2B" href="http://www.gnu.org/copyleft/gpl.html"> GPL</a>' % _( "License") lb_ico = Controles.LB(self).ponImagen(Iconos.pmAplicacion64()) lb_titulo = Controles.LB(self, head) # Tabs tab = Controles.Tab() tab.ponFuente(f) ib = AboutBase.ThanksTo() sub_tab = None for k, titulo in ib.dic.items(): txt = ib.texto(k) lb = Controles.LB(self, txt) lb.set_background("#F6F3EE") lb.ponFuente(f) if "-" in k: base, num = k.split("-") if num == "1": sub_tab = Controles.Tab() sub_tab.ponFuente(f) sub_tab.set_position("S") tab.addTab(sub_tab, _("Engines")) lm = ib.list_engines(num) titulo = lm[0][0].split(" ")[1] + " - " + lm[-1][0].split( " ")[1] sub_tab.addTab(lb, titulo) else: tab.addTab(lb, titulo) ly_v1 = Colocacion.H().control(lb_ico).espacio(15).control( lb_titulo).relleno() layout = Colocacion.V().otro(ly_v1).espacio(10).control(tab).margen(10) self.setLayout(layout)
def __init__(self, gestor, tutor, siRival, siAperturas, siBlancas, siPuntos): titulo = _("Analyzing your move") icono = Iconos.Tutor() extparam = "tutor" QTVarios.WDialogo.__init__(self, gestor.pantalla, titulo, icono, extparam) self.tutor = tutor self.gestor0 = gestor.gestor self.respLibro = None self.siElegidaApertura = False self.vistaTutor = gestor.procesador.configuracion.vistaTutor # ~ self.setStyleSheet("QDialog,QGroupBox { background: #f0f0f0; }") f = Controles.TipoLetra(puntos=12, peso=75) flb = Controles.TipoLetra(puntos=10) flba = Controles.TipoLetra(puntos=8) ae = QTUtil.anchoEscritorio() mx = 32 if ae > 1000 else 20 confTablero = VarGen.configuracion.confTablero("TUTOR", mx) # Tableros def creaTablero(nombre, si=True, siLibre=True, siPunto=False): if not si: return None, None, None tablero = Tablero.Tablero(self, confTablero) tablero.crea() tablero.ponerPiezasAbajo(siBlancas) lytb, tb = QTVarios.lyBotonesMovimiento(self, nombre, siLibre) return tablero, lytb, tb self.tableroTutor, lytbTutor, self.tbTutor = creaTablero("tutor", siPunto=True) self.tableroUsuario, lytbUsuario, self.tbUsuario = creaTablero("usuario") self.tableroRival, lytbRival, self.tbRival = creaTablero("rival", siRival) self.tableroApertura, lytbApertura, self.tbApertura = creaTablero("apertura", siAperturas, siLibre=False) tutor.ponTablerosGUI(self.tableroTutor, self.tableroUsuario, self.tableroRival, self.tableroApertura) # Puntuaciones self.lbTutorPuntuacion = Controles.LB(self).alinCentrado().ponFuente(flb) self.lbUsuarioPuntuacion = Controles.LB(self).alinCentrado().ponFuente(flb) if siRival: self.lbRivalPuntuacion = Controles.LB(self).alinCentrado().ponFuente(flb) # Aperturas if siAperturas: liOpciones = self.tutor.opcionesAperturas() self.cbAperturas = Controles.CB(self, liOpciones, 0) self.cbAperturas.setFont(flba) self.connect(self.cbAperturas, QtCore.SIGNAL("currentIndexChanged(int)"), self.tutor.cambiarApertura) # RM liRM = [] for n, uno in enumerate(tutor.listaRM): liRM.append((uno[1], n)) self.cbRM, self.lbRM = QTUtil2.comboBoxLB(self, liRM, liRM[0][1], _("Moves analyzed")) self.connect(self.cbRM, QtCore.SIGNAL("currentIndexChanged (int)"), tutor.cambiadoRM) lyRM = Colocacion.H().control(self.lbRM).control(self.cbRM) lyTutor = Colocacion.V().relleno().control(self.lbTutorPuntuacion).relleno() gbTutor = Controles.GB(self, _("Tutor's suggestion"), lyTutor).ponFuente(f).alinCentrado() if siPuntos: gbTutor.conectar(self.elegirTutor) self.lbTutorPuntuacion.setEnabled(True) lyUsuario = Colocacion.V().relleno().control(self.lbUsuarioPuntuacion).relleno() gbUsuario = Controles.GB(self, _("Your move"), lyUsuario).ponFuente(f).alinCentrado().conectar( self.elegirUsuario) self.lbUsuarioPuntuacion.setEnabled(True) btLibros = Controles.PB(self, _("Consult a book"), self.consultaLibro).ponPlano(False) if siRival: lyRival = Colocacion.V().relleno().control(self.lbRivalPuntuacion).relleno() gbRival = Controles.GB(self, _("Opponent's prediction"), lyRival).ponFuente(f).alinCentrado() if siAperturas: lyAperturas = Colocacion.V().relleno().control(self.cbAperturas).relleno() gbAperturas = Controles.GB(self, _("Opening"), lyAperturas).alinCentrado().ponFuente(f) if siPuntos: gbAperturas.conectar(self.elegirApertura) self.cbAperturas.setEnabled(True) self.tutor.cambiarApertura(0) dicVista = {kTutorH: ((0, 1), (0, 2)), kTutorH2_1: ((0, 1), (4, 0)), kTutorH1_2: ((4, 0), (4, 1)), kTutorV: ((4, 0), (8, 0))} usu, riv = dicVista[self.vistaTutor] fu, cu = usu fr, cr = riv layout = Colocacion.G() layout.controlc(gbTutor, 0, 0).controlc(self.tableroTutor, 1, 0).otro(lytbTutor, 2, 0).otroc(lyRM, 3, 0) layout.controlc(gbUsuario, fu, cu).controlc(self.tableroUsuario, fu + 1, cu).otro(lytbUsuario, fu + 2, cu).controlc(btLibros, fu + 3, cu) if siRival: layout.controlc(gbRival, fr, cr).controlc(self.tableroRival, fr + 1, cr).otro(lytbRival, fr + 2, cr) elif siAperturas: layout.controlc(gbAperturas, fr, cr).controlc(self.tableroApertura, fr + 1, cr).otro(lytbApertura, fr + 2, cr) layout.margen(8) self.setLayout(layout) self.recuperarVideo(siTam=False)