| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- #from __future__ import unicode_literals
- # -*- coding: utf-8 -*-
- from __future__ import division
- import os, sys
- from PyQt4.QtCore import *
- from PyQt4.QtGui import *
- from Objet import Objet
- from ui.ecran_editionObjet import Ui_eo_fenetre
- import regles
- class EcranEditionObjet(QDialog):
- """interface de creation/edition de terrains"""
- def __init__(self, objet=None, parent=None):
- """initialisation de la fenetre"""
- super (EcranEditionObjet, self).__init__(parent)
- self._resultat = objet
- self.createWidgets()
- self.ouverture(objet)
-
- def createWidgets(self):
- """construction de l'interface"""
- #construction de l'interface
- self.ui = Ui_eo_fenetre()
- self.ui.setupUi(self)
- self.setModal(True)
- self.connect(self.ui.eo_enregistrer, SIGNAL("clicked()"), self.enregistrer)
- self.connect(self.ui.eo_annuler, SIGNAL("clicked()"), self.annuler)
- self.connect(self.ui.eo_supprimer, SIGNAL("clicked()"), self.supprimer)
- self.connect(self.ui.eo_ajouter, SIGNAL("clicked()"), self.ajouter)
- self.connect(self.ui.eo_retirer, SIGNAL("clicked()"), self.retirer)
- self.connect(self.ui.eo_nom, SIGNAL("textEdited(QString)"), self.majAffichage)
-
- def ouverture(self, objet):
- """ouverture en mode edition"""
- if objet:
- self.ui.eo_nom.majTexte(objet.nom)
- self.ui.eo_quantite.setValue(objet.quantite)
- self.ui.eo_poids.setValue(objet.poids)
- self.ui.eo_valeur.setValue(objet.valeur)
- self.ui.eo_monnaie.majTexte(regles.nomMonnaie())
- self.ui.eo_type.setCurrentIndex(objet.typeObjet)
- self.ui.eo_consommable.setChecked(objet.estConsommable)
- else:
- self.ui.eo_ajouter.setVisible(False)
- self.ui.eo_retirer.setVisible(False)
- self.ui.eo_supprimer.setVisible(False)
- self.majAffichage()
- def objet(self):
- objet = Objet()
- objet.nom = self.ui.eo_nom.texte()
- objet.quantite = self.ui.eo_quantite.value()
- objet.type = self.ui.eo_type.currentIndex()
- objet.estConsommable = self.ui.eo_consommable.isChecked()
- objet.poids = self.ui.eo_poids.value()
- objet.valeur = self.ui.eo_valeur.value()
- return objet
- def resultat(self):
- return self._resultat
- def enregistrer(self):
- """enregistre le terrain cree/edite"""
- self._resultat = self.objet()
- self.done(1)
- def supprimer(self):
- """supprimer l'enregistrement de ce terrain"""
- self._resultat = None
- self.done(1)
- def annuler(self):
- """annule la creation/edition"""
- self.done(0)
- def majAffichage(self):
- """verifie la validite des saisies"""
- self.ui.eo_enregistrer.setEnabled(len(self.ui.eo_nom.texte()) > 0)
- def ajouter(self):
- pass
-
- def retirer(self):
- pass
- if __name__ == "__main__":
- app = QApplication(sys.argv)
- ecran = EcranEditionObjet()
- ecran.show()
- r = app.exec_()
- exit(r)
-
|