Beispiel #1
0
class Suma(Operacion):
    def __init__(self, functions, factores=3, digitos=3, correrIDs=0):
        self.agregar = Gtk.HBox()
        self.agregar.show()

        self.principal = Gtk.VBox(False, 0)
        self.principal.show()
        self.agregar.pack_end(self.principal, True, True, 0)

        self.llevo = Factor(digitos, functions, -2)
        self.principal.pack_start(self.llevo.agregar, False, False, 0)

        self.factores = Factores(factores,
                                 digitos,
                                 functions,
                                 True,
                                 correrIDs=correrIDs)
        self.principal.pack_start(self.factores.agregar, False, False, 0)

        self.igual = Gtk.HBox()
        self.igual.show()
        self.linea = self.getLineaHor(500)
        self.igual.pack_end(self.linea, False, False, 0)

        self.signo = Gtk.Image()
        self.signo.set_from_file("./images/+.gif")
        self.signo.show()
        self.igual.pack_start(self.signo, True, True, 0)

        self.principal.pack_start(self.igual, False, True, 10)

        self.resultado = Factor(digitos + 1, functions, -1)
        self.principal.pack_start(self.resultado.agregar, False, False, 0)

        self.tipo = 0

        self.extra = [self.llevo, self.resultado]

    def comprobar(self):
        if (self.resultado.getValor() == self.factores.sumarTodos()):
            return True
        else:
            return False

    def setZoom(self, valor):
        Operacion.setZoom(self, valor)
        if valor == 1:
            self.llevo.setSize("ss")
            self.llevo.digitos.agregar.set_spacing(0)
        elif valor == 2:
            self.llevo.setSize("ss")
            self.llevo.digitos.agregar.set_spacing(40)
        elif valor == 3:
            self.llevo.setSize("s")
            self.llevo.digitos.agregar.set_spacing(40)
        elif valor == 4:
            self.llevo.setSize("m")
            self.llevo.digitos.agregar.set_spacing(40)
class Resta(Operacion):
    def __init__(self, functions, digitos=3):
        self.agregar = gtk.VBox()
        self.agregar.show()

        self.principal = gtk.VBox()
        self.principal.show()
        self.agregar.pack_start(self.principal, False, False)

        self.llevo = Factor(digitos, functions, -2)
        self.principal.pack_start(self.llevo.agregar, False, False)

        self.factores = Factores(2, digitos, functions, False)
        self.principal.pack_start(self.factores.agregar, False, False)

        self.igual = gtk.HBox()
        self.igual.show()
        self.linea = self.getLineaHor(500)
        self.igual.pack_end(self.linea, False, False)

        self.signo = gtk.Image()
        self.signo.set_from_file("./images/-.gif")
        self.signo.show()
        self.igual.pack_start(self.signo, False, False)

        self.principal.pack_start(self.igual, False, False)

        self.resultado = Factor(digitos + 1, functions, -1)
        self.principal.pack_start(self.resultado.agregar, False, False)

        self.tipo = 1

        self.extra = [self.llevo, self.resultado]

    def comprobar(self):
        pass

    def setZoom(self, valor):
        Operacion.setZoom(self, valor)
        if valor == 1:
            self.llevo.setSize("ss")
            self.llevo.digitos.agregar.set_spacing(0)
        elif valor == 2:
            self.llevo.setSize("ss")
            self.llevo.digitos.agregar.set_spacing(40)
        elif valor == 3:
            self.llevo.setSize("s")
            self.llevo.digitos.agregar.set_spacing(40)
        elif valor == 4:
            self.llevo.setSize("m")
            self.llevo.digitos.agregar.set_spacing(40)