Esempio n. 1
0
    def __init__(self,config,parent=None,):
        QtGui.QDialog.__init__(self,parent)
        self.ui=Ui_DialogoConfig()
        self.ui.setupUi(self)
        self.__wgeneral=QtGui.QDialog()
        self.__wgeneralui=Ui_wconfig1()
        self.__wgeneralui.setupUi(self.__wgeneral)
        #VARIABLES PRIVADAS

        self.__cambiado=False
        self.__config=config

        self.ui.listWidget.clear()
        self.ui.listWidget.insertItem(0,QtCore.QString("General"))
        #Inicializacion de widgets
        #self.__wgeneral=wconfig1(self.widgetStack1,"ficheros",)
        self.ui.stackedWidget.addWidget(self.__wgeneral)
        #Seleccionar por defecto el valor 0 y poblarlo
        self.__mostrar_caja(1)
        self.__conexiones()
Esempio n. 2
0
class DConfig(QtGui.QDialog):
    """Permite configurar cualquier aspecto del programa. Esta vinculado al objeto ManejadorConfig"""

    def __init__(self,config,parent=None,):
        QtGui.QDialog.__init__(self,parent)
        self.ui=Ui_DialogoConfig()
        self.ui.setupUi(self)
        self.__wgeneral=QtGui.QDialog()
        self.__wgeneralui=Ui_wconfig1()
        self.__wgeneralui.setupUi(self.__wgeneral)
        #VARIABLES PRIVADAS

        self.__cambiado=False
        self.__config=config

        self.ui.listWidget.clear()
        self.ui.listWidget.insertItem(0,QtCore.QString("General"))
        #Inicializacion de widgets
        #self.__wgeneral=wconfig1(self.widgetStack1,"ficheros",)
        self.ui.stackedWidget.addWidget(self.__wgeneral)
        #Seleccionar por defecto el valor 0 y poblarlo
        self.__mostrar_caja(1)
        self.__conexiones()

    #FUNCIONES PUBLICAS
    def accept(self):
        """Funcion redefinida que establece que debe hacer el dialogo cuando el usuario pulsa aceptar.
        Ante un cambio en los campos del dialogo, pregunta al usuario si guarda la configuración
        """
        if not self.__cambiado:
            DialogoConfig.accept(self)
        else:
            self.__cambiado = False # Volvemos a ponerlo en falso
            codigoretorno = QMessageBox.information(self,u'Atención: Guardar', u'Ha cambiado la configuración, desea guardarla?', 'Guardarla','Cancelar','Dejarlo estar',0,1)
            if codigoretorno == 0:
                #Crear una interfaz usuario configuracion #DECISION DE DISEÑO, pendiente
                self.__guardar_config()
                DialogoConfig.accept(self)
            elif codigoretorno == 2:
                DialogoConfig.reject(self)
            else:
                self.__cambiado = True

    
    #FUNCIONES PRIVADAS

    def __mostrar_caja(self, numero): # El numero es el indice de la listBox
        """Puebla la caja donde se encuentra la seccion"""
        if numero == 1:
            self.ui.stackedWidget.setCurrentWidget(self.__wgeneral)
            self.__wgeneralui.lineEdit1.setText(self.__config.configuracion["tmpdir"])
            self.__wgeneralui.checkBox1.setChecked(self.__config.configuracion["vsplash"])
            self.__wgeneralui.spinBox1.setValue(self.__config.configuracion["decimales"])
            self.__wgeneralui.spinBox2.setValue(self.__config.configuracion["nundo"])

    def __conexiones(self):
        """Bloque de conexiones"""
        from PyQt4.QtCore import SIGNAL
        self.connect(self.__wgeneralui.lineEdit1,SIGNAL("textChanged(const QString&)"),self.__cambio)
        self.connect(self.__wgeneralui.checkBox1,SIGNAL("clicked()"),self.__cambio)
        self.connect(self.__wgeneralui.spinBox1,SIGNAL("valueChanged(int)"),self.__cambio)
        self.connect(self.__wgeneralui.spinBox2,SIGNAL("valueChanged(int)"),self.__cambio)

    def __cambio(self):
        """Almacena si se ha producido algun cambio"""
        self.__cambiado = True

    def __guardar_config(self):
        """Guarda la configuración en el objeto que la maneja"""
        self.__config.configuracion["tmpdir"] = str(self.__wgeneral.lineEdit1.text())
        self.__config.configuracion["vsplash"] = self.__wgeneral.checkBox1.isChecked()
        self.__config.configuracion["decimales"] = int(self.__wgeneral.spinBox1.value())
        self.__config.configuracion["nundo"] = int(self.__wgeneral.spinBox2.value())
        self.__config.save()