Ver código fonte

Toutes les images sont desormais dans un fichier de ressource

unknown 10 anos atrás
pai
commit
806a70afb4
100 arquivos alterados com 207 adições e 209 exclusões
  1. 0 1
      DMonde.py
  2. 16 20
      a faire.txt
  3. 0 0
      img/Nouvelle image bitmap.bmp
  4. BIN
      img/cur/cur_dep.png
  5. BIN
      img/cur/cur_doigt.png
  6. BIN
      img/cur/cur_plus.png
  7. BIN
      img/cur/cur_style.png
  8. BIN
      img/curseur.png
  9. BIN
      img/eau1.jpg
  10. BIN
      img/parchemin.jpg
  11. 5 6
      lib/EcranEditionCombattant.py
  12. 171 171
      lib/EcranEditionDecors.py
  13. 3 3
      lib/EcranFondPlateau.py
  14. 10 7
      lib/Plateau.py
  15. BIN
      lib/biblio/combattant
  16. 2 1
      lib/framePj.py
  17. 0 0
      lib/img/Nouvelle image bitmap.bmp
  18. BIN
      lib/img/agrandir.png
  19. BIN
      lib/img/agrandissement.png
  20. BIN
      lib/img/aide.png
  21. BIN
      lib/img/arc.png
  22. BIN
      lib/img/armes.png
  23. BIN
      lib/img/attaque.png
  24. BIN
      lib/img/baguette.png
  25. BIN
      lib/img/boite_outils.png
  26. BIN
      lib/img/bombe.png
  27. BIN
      lib/img/bouclier.png
  28. BIN
      lib/img/btnCopie.png
  29. BIN
      lib/img/btnCouleurs.png
  30. BIN
      lib/img/btnCreation.png
  31. BIN
      lib/img/btnDeplacer.png
  32. BIN
      lib/img/btnEnregistrer.png
  33. BIN
      lib/img/btnEntree.png
  34. BIN
      lib/img/btnFermer.png
  35. BIN
      lib/img/btnSortie.png
  36. BIN
      lib/img/btnZonePlacement.png
  37. BIN
      lib/img/btn_ModeCombat.png
  38. BIN
      lib/img/carte.png
  39. BIN
      lib/img/chevalier.png
  40. BIN
      lib/img/chimie.png
  41. BIN
      lib/img/chimie2.png
  42. BIN
      lib/img/cmdVue_cbt.png
  43. BIN
      lib/img/cmdVue_ouvrir.png
  44. BIN
      lib/img/cmdVue_plus.png
  45. BIN
      lib/img/colonne.png
  46. BIN
      lib/img/combat3.jpg
  47. BIN
      lib/img/combat4.png
  48. BIN
      lib/img/cone.png
  49. BIN
      lib/img/corbeille.png
  50. BIN
      lib/img/creature.png
  51. BIN
      lib/img/cur/cur_dep.png
  52. BIN
      lib/img/cur/cur_doigt.png
  53. BIN
      lib/img/cur/cur_plus.png
  54. BIN
      lib/img/cur/cur_style.png
  55. BIN
      lib/img/curseur.png
  56. BIN
      lib/img/curseurEpee.png
  57. BIN
      lib/img/curseurPinceau.png
  58. BIN
      lib/img/curseurSeringue.png
  59. BIN
      lib/img/de.png
  60. BIN
      lib/img/decor.png
  61. BIN
      lib/img/dep_pied.png
  62. BIN
      lib/img/deplacement.png
  63. BIN
      lib/img/deplacement2.png
  64. BIN
      lib/img/diamant.png
  65. BIN
      lib/img/dragon.png
  66. BIN
      lib/img/dragon4.png
  67. BIN
      lib/img/eau1.jpg
  68. BIN
      lib/img/editer.png
  69. BIN
      lib/img/effFeu.jpg
  70. BIN
      lib/img/effGlace.jpg
  71. BIN
      lib/img/effPoison.png
  72. BIN
      lib/img/escalade.png
  73. BIN
      lib/img/escalade_24.png
  74. BIN
      lib/img/etatEau.png
  75. BIN
      lib/img/etatEndormi.png
  76. BIN
      lib/img/etatEntrave.png
  77. BIN
      lib/img/etatEtourdi.png
  78. BIN
      lib/img/etatFeu.png
  79. BIN
      lib/img/etatMort.png
  80. BIN
      lib/img/etatParalyse.png
  81. BIN
      lib/img/etatVol.png
  82. BIN
      lib/img/etoile.png
  83. BIN
      lib/img/flecheBas.png
  84. BIN
      lib/img/flecheDroite.png
  85. BIN
      lib/img/flecheDroite2.png
  86. BIN
      lib/img/flecheGauche.png
  87. BIN
      lib/img/flecheHaut.png
  88. BIN
      lib/img/foret.jpg
  89. BIN
      lib/img/formeEllipsePlein.png
  90. BIN
      lib/img/formeEllipseVide.png
  91. BIN
      lib/img/formeLigne.png
  92. BIN
      lib/img/formeLigneOrientee.png
  93. BIN
      lib/img/formeRectPlein.png
  94. BIN
      lib/img/formeRectVide.png
  95. BIN
      lib/img/gomme.png
  96. BIN
      lib/img/herbe.jpg
  97. BIN
      lib/img/herbe2.jpg
  98. BIN
      lib/img/interdit.png
  99. BIN
      lib/img/ligneBrisee.png
  100. BIN
      lib/img/loupe.png

+ 0 - 1
DMonde.py

@@ -78,7 +78,6 @@ class DMonde(QMainWindow):
         self.creerEcranFondPlateau()
         self.creerEcranFondPlateau()
         self.chargerListePj()
         self.chargerListePj()
         self.connect(self.ui.grp_nouveauPj, SIGNAL("clicked()"), self.nouveauPj)
         self.connect(self.ui.grp_nouveauPj, SIGNAL("clicked()"), self.nouveauPj)
-##        self.ui.grp_deroulement_contenu.setStyleSheet("background-color: rgb(255,255,255)")
         
         
     def creerEcranFondPlateau(self):
     def creerEcranFondPlateau(self):
         ecranFondPlateau = EcranFondPlateau(self)
         ecranFondPlateau = EcranFondPlateau(self)

+ 16 - 20
a faire.txt

@@ -1,47 +1,43 @@
-creer une frame qui montre une vue en coupe de l'altitude et des obstacles (a la place du journal)
-lors des deplacements, attaques à distance ou de zone
+Améliorer la gestion des ressources (images, sons)
 
 
-creer une forme de dessin 'pot de peinture'
+Permettre l'envoi de sons par le chat :)
 
 
-creer des id uniques pour les plateaux et objets ("p"+partie++chapitre+nom? ou tps en s a la creation + préfixe?)
+améliorer la gestion des sauvegardes et bibliothèques
 
 
-chaque fichier de svg doit etre accompagne d'un petit fichier d'info (.pi?)
+Gérer l'affichage et l'enregistrement des fiches de perso
 
 
-creer un fichier de config
+Créer des fiches de PJ en mode création, permettant des saisies aléatoires
 
 
-table des attributs: sur clic droit, afficher une inbox qui explique la saisie: =(par def)/+/-- & txt, jet de dés, valeur
+Améliorer apparence de l'onglet groupe
 
 
-verifier fonction d'attaque a dist (au travers de decors)
+Ajouter commande: 'ajouter PJ au plateau'
 
 
-mettre en place les 'types de terrain' et de decors
+Trouver une solution pour rassembler plusieurs plateaux en un combat
 
 
-décors à forme variables : lignes, disques
+creer une frame qui montre une vue en coupe de l'altitude et des obstacles (a la place du journal)
+lors des deplacements, attaques à distance ou de zone
 
 
-effet clic droit sur pion?  -> utiliser l'attaque actuellement selectionnee?
+creer une forme de dessin 'pot de peinture'
 
 
-edition de creatures:
-- finir inventaire
-- possibilite de saisir des jets de dés pour les quantités
+table des attributs: sur clic droit, afficher une inbox qui explique la saisie: =(par def)/+/-- & txt, jet de dés, valeur
+
+mettre en place les 'types de terrain' et de decors
+
+décors à forme variables : lignes, disques
 
 
 mettre en place des signaux de maj entre gestioncombat et plateau
 mettre en place des signaux de maj entre gestioncombat et plateau
 
 
 [utile?] reprendre la fonction d'occupation des cases pour qu'elle n'utilise plus les objets eux mêmes
 [utile?] reprendre la fonction d'occupation des cases pour qu'elle n'utilise plus les objets eux mêmes
 
 
-bouton de rafraichissement forcé (occupation des cases, affichage des cases, listes de pions et de décors...)
-
 reprendre affichage tactique pour qu'il remplace les terrains par des couleurs et qu'il affiche
 reprendre affichage tactique pour qu'il remplace les terrains par des couleurs et qu'il affiche
 les pions ennemis en rouge, les alliés en bleu, les morts en noirs
 les pions ennemis en rouge, les alliés en bleu, les morts en noirs
 
 
 altitude des cases : prise en compte dans les deplacement et les champs de vision, hauteur max (plafond?)
 altitude des cases : prise en compte dans les deplacement et les champs de vision, hauteur max (plafond?)
 
 
-faire tableau des carac des décors
-
 créer les codes couleurs de la bordure des pions
 créer les codes couleurs de la bordure des pions
 
 
 idée: mémoriser la position relative des cases de l'attaque zone-disque
 idée: mémoriser la position relative des cases de l'attaque zone-disque
 
 
-faire une fenetre de creation/edition d'objets (terrain, creatures, decors) unique
-
 -----------------------
 -----------------------
 fait 21/07
 fait 21/07
 - anti aliasing dans qt creator
 - anti aliasing dans qt creator

+ 0 - 0
img/Nouvelle image bitmap.bmp


BIN
img/cur/cur_dep.png


BIN
img/cur/cur_doigt.png


BIN
img/cur/cur_plus.png


BIN
img/cur/cur_style.png


BIN
img/curseur.png


BIN
img/eau1.jpg


BIN
img/parchemin.jpg


+ 5 - 6
lib/EcranEditionCombattant.py

@@ -19,7 +19,7 @@ import ui.dm as dm
 	
 	
 class EcranEditionCombattant(QDialog):
 class EcranEditionCombattant(QDialog):
     """interface de creation/edition de terrains"""
     """interface de creation/edition de terrains"""
-    def __init__(self, combattant=None, pageInitiale = 0, parent=None):
+    def __init__(self, combattant=None, pageInitiale = 0, formeCases = "H", parent=None):
         """initialisation de la fenetre"""
         """initialisation de la fenetre"""
         super (EcranEditionCombattant, self).__init__()
         super (EcranEditionCombattant, self).__init__()
         self.pixGraphique = None
         self.pixGraphique = None
@@ -34,6 +34,10 @@ class EcranEditionCombattant(QDialog):
         self.ouverture()
         self.ouverture()
         self.ui.edc_menu.setCurrentCell(pageInitiale, 0)
         self.ui.edc_menu.setCurrentCell(pageInitiale, 0)
         self.ui.edc_pages.setCurrentIndex(pageInitiale)
         self.ui.edc_pages.setCurrentIndex(pageInitiale)
+        if formeCases == "C":
+            self.ui.edc_casesCarrees.setChecked(True)
+            self.majFormeCases()
+            
 
 
     def nouvelIdCombattant(self):
     def nouvelIdCombattant(self):
         """renvoie un identifiant pour un nouveau terrain"""
         """renvoie un identifiant pour un nouveau terrain"""
@@ -275,11 +279,6 @@ class EcranEditionCombattant(QDialog):
         """construction de la page inventaire"""
         """construction de la page inventaire"""
         self.ui.edc_listeInventaire.construire()
         self.ui.edc_listeInventaire.construire()
         self.connect(self.ui.edc_listeInventaire, SIGNAL("objetClique(int)"), self.editerObjet)
         self.connect(self.ui.edc_listeInventaire, SIGNAL("objetClique(int)"), self.editerObjet)
-        self.ui.edc_listeInventaire.ajouterObjet(Objet(1,"a",0))
-        self.ui.edc_listeInventaire.ajouterObjet(Objet(1,"b",1))
-        self.ui.edc_listeInventaire.ajouterObjet(Objet(1,"c",2))
-        self.ui.edc_listeInventaire.ajouterObjet(Objet(1,"d",3))
-        self.ui.edc_listeInventaire.ajouterObjet(Objet(1,"e",4))
 
 
     def editerObjet(self, indexObjet):
     def editerObjet(self, indexObjet):
         if indexObjet < len(self.ui.edc_listeInventaire.inventaire()):
         if indexObjet < len(self.ui.edc_listeInventaire.inventaire()):

+ 171 - 171
lib/EcranEditionDecors.py

@@ -4,7 +4,7 @@ from __future__ import division
 from PyQt4.QtCore import *
 from PyQt4.QtCore import *
 from PyQt4.QtGui import *
 from PyQt4.QtGui import *
 from Decor import Decor
 from Decor import Decor
-from ui.ecran_editionDecor import Ui_editionDecor
+from ui.ecran_editionDecor import Ui_edd_fenetre
 from outilsSvg import *
 from outilsSvg import *
 from VueEditionForme import VueEditionForme
 from VueEditionForme import VueEditionForme
 
 
@@ -15,178 +15,178 @@ class EcranEditionDecors(QDialog):
         """initialisation de la fenetre"""
         """initialisation de la fenetre"""
         super (EcranEditionDecors, self).__init__()
         super (EcranEditionDecors, self).__init__()
         
         
-        self.pixGraphique = None
-        self.formeCases = formeCases
+##        self.pixGraphique = None
+##        self.formeCases = formeCases
         self.createWidgets()
         self.createWidgets()
-        
-        if decor == None:
-            self.decor = Decor()
-            self.accesCreation()
-        else:
-            self.decor = decor
-            self.accesEdition()
-        self.majAffichage("")    
-        
+##        
+##        if decor == None:
+##            self.decor = Decor()
+##            self.accesCreation()
+##        else:
+##            self.decor = decor
+##            self.accesEdition()
+##        self.majAffichage("")    
+##        
     def createWidgets(self):
     def createWidgets(self):
         """construction de l'interface"""
         """construction de l'interface"""
         #construction de l'interface
         #construction de l'interface
-        self.ui = Ui_editionDecor()
+        self.ui = Ui_edd_fenetre()
         self.ui.setupUi(self)
         self.ui.setupUi(self)
-        self.connect(self.ui.enregistrerDecor, SIGNAL("clicked()"), self.enregistrer)
-        self.connect(self.ui.annulerDecor, SIGNAL("clicked()"), self.annuler)
-        self.connect(self.ui.supprimerDecor, SIGNAL("clicked()"), self.supprimer)
-        self.connect(self.ui.idDecor, SIGNAL("textEdited(QString)"), self.majAffichage)
-        self.connect(self.ui.nomDecor, SIGNAL("textEdited(QString)"), self.majAffichage)
-        self.connect(self.ui.couleurDecor, SIGNAL("clicked()"), self.selectionCouleur)
-
-        self.connect(self.ui.imgDecor, SIGNAL("textEdited(QString)"), self.majApercuImage)
-        self.connect(self.ui.imgLogoDecor, SIGNAL("textEdited(QString)"), self.majApercuImage)
-        self.connect(self.ui.imgAfficherDecor, SIGNAL("stateChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgPivoteDecor, SIGNAL("stateChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgMasqueDecor, SIGNAL("stateChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgTailleXDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgTailleYDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgPosXDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgPosYDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgRotationDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
-        self.connect(self.ui.imgReinitDecor, SIGNAL("clicked()"), self.reinitImage)
-
-        self.vueForme = VueEditionForme(self, self.formeCases)
-        self.vueForme.creer()
-        
-    def accesEdition(self):
-        """ouverture en mode edition"""
-        self.ui.idDecor.setEnabled(True)
-       
-        self.ui.idDecor.setText(QString.fromUtf8(str(self.decor.id)))
-        self.ui.nomDecor.setText(QString.fromUtf8(str(self.decor.nom)))        
-        if self.decor.couleur.isValid():
-            self.ui.affichageCouleurDecor.setStyleSheet("QLabel {backGround:%s}" %(self.decor.couleur.name()))
-
-        self.ui.imgLogoDecor.setText(QString.fromUtf8(str(self.decor.logo)))
-        if self.decor.img.nom != self.decor.logo: 
-            self.ui.imgDecor.setText(QString.fromUtf8(str(self.decor.img.nom)))
-        self.ui.imgTailleXDecor.setValue(self.decor.img.kx)
-        self.ui.imgTailleYDecor.setValue(self.decor.img.ky)
-        self.ui.imgPosXDecor.setValue(self.decor.img.dx)
-        self.ui.imgPosYDecor.setValue(self.decor.img.dy)
-        self.ui.imgRotationDecor.setValue(self.decor.img.rotation)
-        self.ui.imgPivoteDecor.setChecked(self.decor.img.pivote)
-        self.ui.imgMasqueDecor.setChecked(self.decor.img.masqueAuto)
-          
-        self.ui.hauteurDecor.setValue(self.decor.hauteur)    
-        self.ui.couvertDecor.setChecked(self.decor.couvert)
-        self.ui.escaladeDecor.setChecked(self.decor.escalade)
-        self.ui.franchissablePiedDecor.setChecked(self.decor.franchissablePied)
-        self.ui.franchissableVolDecor.setChecked(self.decor.franchissableVol)
-        self.ui.bruleDecor.setChecked(self.decor.brule)
-              
-        self.vueForme.majForme(self.decor.formeDef[self.formeCases])    
-        self.ui.supprimerDecor.setEnabled(True)
-        self.ui.idDecor.setEnabled(False)
-        self.majApercuImage()
-
-    def accesCreation(self):
-        """ouverture en mode creation"""
-        self.ui.idDecor.setEnabled(True)
-        self.ui.idDecor.setText(QString.fromUtf8(str(self.nouvelIdDecor())))
-        self.ui.idDecor.setEnabled(False)
-        self.majApercuImage()
-
-    def majAffichage(self, txt):
-        """verifie la validite des saisies"""
-        self.ui.enregistrerDecor.setEnabled(len(self.ui.idDecor.text().toUtf8()) > 0 and len(self.ui.nomDecor.text().toUtf8()) > 0)
-
-    def nouvelIdDecor(self):
-        """renvoie un identifiant pour un nouveau decor"""
-        dicoSvg = afficheSvg("lib\\biblio\\decor")
-        nouvelId = 1
-        while str(nouvelId) in dicoSvg.keys():
-            nouvelId += 1
-        return str(nouvelId)
-
-    def selectionCouleur(self):
-        """selectionne la couleur dans la boite de dialogue dediee"""
-        couleur = QColorDialog(self).getColor(QColor("white"), self)
-        if couleur.isValid():
-            nomCouleur = couleur.name()
-            self.ui.affichageCouleurDecor.setStyleSheet("QLabel {backGround:%s}" %(nomCouleur))
-            self.decor.couleur = couleur    
-
-    def majApercuImage(self):
-        """met a jour l'image sur l'apercu du pion"""
-        if self.ui.imgAfficherDecor.isChecked():
-            if len(str(self.ui.imgDecor.text().toUtf8())) > 0:
-                img = str(self.ui.imgDecor.text().toUtf8())
-                self.vueForme.majImage(img, self.ui.imgTailleXDecor.value() \
-                                  , self.ui.imgTailleYDecor.value() \
-                                  , self.ui.imgPosXDecor.value() \
-                                  , self.ui.imgPosYDecor.value() \
-                                  , self.ui.imgRotationDecor.value() \
-                                  , self.ui.imgPivoteDecor.isChecked() \
-                                  , self.ui.imgMasqueDecor.isChecked())
-            else:
-                img = str(self.ui.imgLogoDecor.text().toUtf8())
-                self.vueForme.majImage(img)
-        else:
-            img = ""
-            self.vueForme.majImage(img)
-
-
-    def reinitImage(self):
-        self.ui.imgTailleXDecor.setValue(10)
-        self.ui.imgTailleYDecor.setValue(10)
-        self.ui.imgPosXDecor.setValue(0)
-        self.ui.imgPosYDecor.setValue(0)
-        self.ui.imgRotationDecor.setValue(0)
-        self.ui.imgPivoteDecor.setChecked(False)
-        self.ui.imgMasqueDecor.setChecked(False)
-        self.majApercuImage()
-            
-    def enregistrer(self):
-        """enregistre le terrain cree/edite"""
-        self.decor.id = str(self.ui.idDecor.text().toUtf8())
-        self.decor.nom = str(self.ui.nomDecor.text().toUtf8())
-
-        self.decor.logo = str(self.ui.imgLogoDecor.text().toUtf8())
-        if len(str(self.ui.imgDecor.text().toUtf8())) > 0:       
-            self.decor.img.nom = str(self.ui.imgDecor.text().toUtf8())
-            self.decor.img.kx = self.ui.imgTailleXDecor.value()
-            self.decor.img.ky = self.ui.imgTailleYDecor.value()
-            self.decor.img.dx = self.ui.imgPosXDecor.value()
-            self.decor.img.dy = self.ui.imgPosYDecor.value()
-            self.decor.img.rotation = self.ui.imgRotationDecor.value()
-            self.decor.img.pivote = self.ui.imgPivoteDecor.isChecked()
-            self.decor.img.masqueAuto = self.ui.imgMasqueDecor.isChecked()
-        else:
-            self.decor.img.nom = str(self.ui.imgLogoDecor.text().toUtf8())
-            self.decor.img.kx = 10
-            self.decor.img.ky = 10
-            self.decor.img.dx = 0
-            self.decor.img.dy = 0
-            self.decor.img.rotation = 0
-            self.decor.img.pivote = False
-            self.decor.img.masqueAuto = self.ui.imgMasqueDecor.isChecked()
-            
-        self.decor.hauteur = int(self.ui.hauteurDecor.value())        
-        self.decor.couvert = self.ui.couvertDecor.isChecked()
-        self.decor.brule = self.ui.bruleDecor.isChecked()
-        self.decor.franchissablePied = self.ui.franchissablePiedDecor.isChecked()
-        self.decor.franchissableVol = self.ui.franchissableVolDecor.isChecked()
-        self.decor.escalade = self.ui.escaladeDecor.isChecked()
-        
-        self.decor.formeDef[self.formeCases] = self.vueForme.formeDef()
-        
-        enregistrer(self.decor.id, self.decor, "lib\\biblio\\decor")
-        self.decor = None
-        self.done(1)
-
-    def supprimer(self):
-        """supprimer l'enregistrement de ce terrain"""
-        supprSvg("lib\\biblio\\decor", self.decor.id)
-        self.done(1)
-
-    def annuler(self):
-        """annule la creation/edition"""
-        self.decor = None
-        self.done(0)
+##        self.connect(self.ui.enregistrerDecor, SIGNAL("clicked()"), self.enregistrer)
+##        self.connect(self.ui.annulerDecor, SIGNAL("clicked()"), self.annuler)
+##        self.connect(self.ui.supprimerDecor, SIGNAL("clicked()"), self.supprimer)
+##        self.connect(self.ui.idDecor, SIGNAL("textEdited(QString)"), self.majAffichage)
+##        self.connect(self.ui.nomDecor, SIGNAL("textEdited(QString)"), self.majAffichage)
+##        self.connect(self.ui.couleurDecor, SIGNAL("clicked()"), self.selectionCouleur)
+##
+##        self.connect(self.ui.imgDecor, SIGNAL("textEdited(QString)"), self.majApercuImage)
+##        self.connect(self.ui.imgLogoDecor, SIGNAL("textEdited(QString)"), self.majApercuImage)
+##        self.connect(self.ui.imgAfficherDecor, SIGNAL("stateChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgPivoteDecor, SIGNAL("stateChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgMasqueDecor, SIGNAL("stateChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgTailleXDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgTailleYDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgPosXDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgPosYDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgRotationDecor, SIGNAL("valueChanged(int)"), self.majApercuImage)
+##        self.connect(self.ui.imgReinitDecor, SIGNAL("clicked()"), self.reinitImage)
+##
+##        self.vueForme = VueEditionForme(self, self.formeCases)
+##        self.vueForme.creer()
+##        
+##    def accesEdition(self):
+##        """ouverture en mode edition"""
+##        self.ui.idDecor.setEnabled(True)
+##       
+##        self.ui.idDecor.setText(QString.fromUtf8(str(self.decor.id)))
+##        self.ui.nomDecor.setText(QString.fromUtf8(str(self.decor.nom)))        
+##        if self.decor.couleur.isValid():
+##            self.ui.affichageCouleurDecor.setStyleSheet("QLabel {backGround:%s}" %(self.decor.couleur.name()))
+##
+##        self.ui.imgLogoDecor.setText(QString.fromUtf8(str(self.decor.logo)))
+##        if self.decor.img.nom != self.decor.logo: 
+##            self.ui.imgDecor.setText(QString.fromUtf8(str(self.decor.img.nom)))
+##        self.ui.imgTailleXDecor.setValue(self.decor.img.kx)
+##        self.ui.imgTailleYDecor.setValue(self.decor.img.ky)
+##        self.ui.imgPosXDecor.setValue(self.decor.img.dx)
+##        self.ui.imgPosYDecor.setValue(self.decor.img.dy)
+##        self.ui.imgRotationDecor.setValue(self.decor.img.rotation)
+##        self.ui.imgPivoteDecor.setChecked(self.decor.img.pivote)
+##        self.ui.imgMasqueDecor.setChecked(self.decor.img.masqueAuto)
+##          
+##        self.ui.hauteurDecor.setValue(self.decor.hauteur)    
+##        self.ui.couvertDecor.setChecked(self.decor.couvert)
+##        self.ui.escaladeDecor.setChecked(self.decor.escalade)
+##        self.ui.franchissablePiedDecor.setChecked(self.decor.franchissablePied)
+##        self.ui.franchissableVolDecor.setChecked(self.decor.franchissableVol)
+##        self.ui.bruleDecor.setChecked(self.decor.brule)
+##              
+##        self.vueForme.majForme(self.decor.formeDef[self.formeCases])    
+##        self.ui.supprimerDecor.setEnabled(True)
+##        self.ui.idDecor.setEnabled(False)
+##        self.majApercuImage()
+##
+##    def accesCreation(self):
+##        """ouverture en mode creation"""
+##        self.ui.idDecor.setEnabled(True)
+##        self.ui.idDecor.setText(QString.fromUtf8(str(self.nouvelIdDecor())))
+##        self.ui.idDecor.setEnabled(False)
+##        self.majApercuImage()
+##
+##    def majAffichage(self, txt):
+##        """verifie la validite des saisies"""
+##        self.ui.enregistrerDecor.setEnabled(len(self.ui.idDecor.text().toUtf8()) > 0 and len(self.ui.nomDecor.text().toUtf8()) > 0)
+##
+##    def nouvelIdDecor(self):
+##        """renvoie un identifiant pour un nouveau decor"""
+##        dicoSvg = afficheSvg("lib\\biblio\\decor")
+##        nouvelId = 1
+##        while str(nouvelId) in dicoSvg.keys():
+##            nouvelId += 1
+##        return str(nouvelId)
+##
+##    def selectionCouleur(self):
+##        """selectionne la couleur dans la boite de dialogue dediee"""
+##        couleur = QColorDialog(self).getColor(QColor("white"), self)
+##        if couleur.isValid():
+##            nomCouleur = couleur.name()
+##            self.ui.affichageCouleurDecor.setStyleSheet("QLabel {backGround:%s}" %(nomCouleur))
+##            self.decor.couleur = couleur    
+##
+##    def majApercuImage(self):
+##        """met a jour l'image sur l'apercu du pion"""
+##        if self.ui.imgAfficherDecor.isChecked():
+##            if len(str(self.ui.imgDecor.text().toUtf8())) > 0:
+##                img = str(self.ui.imgDecor.text().toUtf8())
+##                self.vueForme.majImage(img, self.ui.imgTailleXDecor.value() \
+##                                  , self.ui.imgTailleYDecor.value() \
+##                                  , self.ui.imgPosXDecor.value() \
+##                                  , self.ui.imgPosYDecor.value() \
+##                                  , self.ui.imgRotationDecor.value() \
+##                                  , self.ui.imgPivoteDecor.isChecked() \
+##                                  , self.ui.imgMasqueDecor.isChecked())
+##            else:
+##                img = str(self.ui.imgLogoDecor.text().toUtf8())
+##                self.vueForme.majImage(img)
+##        else:
+##            img = ""
+##            self.vueForme.majImage(img)
+##
+##
+##    def reinitImage(self):
+##        self.ui.imgTailleXDecor.setValue(10)
+##        self.ui.imgTailleYDecor.setValue(10)
+##        self.ui.imgPosXDecor.setValue(0)
+##        self.ui.imgPosYDecor.setValue(0)
+##        self.ui.imgRotationDecor.setValue(0)
+##        self.ui.imgPivoteDecor.setChecked(False)
+##        self.ui.imgMasqueDecor.setChecked(False)
+##        self.majApercuImage()
+##            
+##    def enregistrer(self):
+##        """enregistre le terrain cree/edite"""
+##        self.decor.id = str(self.ui.idDecor.text().toUtf8())
+##        self.decor.nom = str(self.ui.nomDecor.text().toUtf8())
+##
+##        self.decor.logo = str(self.ui.imgLogoDecor.text().toUtf8())
+##        if len(str(self.ui.imgDecor.text().toUtf8())) > 0:       
+##            self.decor.img.nom = str(self.ui.imgDecor.text().toUtf8())
+##            self.decor.img.kx = self.ui.imgTailleXDecor.value()
+##            self.decor.img.ky = self.ui.imgTailleYDecor.value()
+##            self.decor.img.dx = self.ui.imgPosXDecor.value()
+##            self.decor.img.dy = self.ui.imgPosYDecor.value()
+##            self.decor.img.rotation = self.ui.imgRotationDecor.value()
+##            self.decor.img.pivote = self.ui.imgPivoteDecor.isChecked()
+##            self.decor.img.masqueAuto = self.ui.imgMasqueDecor.isChecked()
+##        else:
+##            self.decor.img.nom = str(self.ui.imgLogoDecor.text().toUtf8())
+##            self.decor.img.kx = 10
+##            self.decor.img.ky = 10
+##            self.decor.img.dx = 0
+##            self.decor.img.dy = 0
+##            self.decor.img.rotation = 0
+##            self.decor.img.pivote = False
+##            self.decor.img.masqueAuto = self.ui.imgMasqueDecor.isChecked()
+##            
+##        self.decor.hauteur = int(self.ui.hauteurDecor.value())        
+##        self.decor.couvert = self.ui.couvertDecor.isChecked()
+##        self.decor.brule = self.ui.bruleDecor.isChecked()
+##        self.decor.franchissablePied = self.ui.franchissablePiedDecor.isChecked()
+##        self.decor.franchissableVol = self.ui.franchissableVolDecor.isChecked()
+##        self.decor.escalade = self.ui.escaladeDecor.isChecked()
+##        
+##        self.decor.formeDef[self.formeCases] = self.vueForme.formeDef()
+##        
+##        enregistrer(self.decor.id, self.decor, "lib\\biblio\\decor")
+##        self.decor = None
+##        self.done(1)
+##
+##    def supprimer(self):
+##        """supprimer l'enregistrement de ce terrain"""
+##        supprSvg("lib\\biblio\\decor", self.decor.id)
+##        self.done(1)
+##
+##    def annuler(self):
+##        """annule la creation/edition"""
+##        self.decor = None
+##        self.done(0)

+ 3 - 3
lib/EcranFondPlateau.py

@@ -14,11 +14,11 @@ class EcranFondPlateau(QGraphicsScene):
         
         
         self.connect(self.fenetre.ui.cbt_vue, SIGNAL("resizeEvent()"), self.actu)
         self.connect(self.fenetre.ui.cbt_vue, SIGNAL("resizeEvent()"), self.actu)
         self.fenetre.connect(self.fenetre.ui.cbt_vue, SIGNAL("resizeEvent()"), self.actu)
         self.fenetre.connect(self.fenetre.ui.cbt_vue, SIGNAL("resizeEvent()"), self.actu)
-        self.cmdEnCours = CommandeFondPlateau(self, "creer", "img\\cmdVue_cbt.png", "Afficher le dernier combat", 15, 15, 30, 60)
+        self.cmdEnCours = CommandeFondPlateau(self, "creer", ":/interface/512/ressource/armes_512.png", "Afficher le dernier combat", 15, 15, 30, 60)
         self.cmdEnCours.creer()
         self.cmdEnCours.creer()
-        self.cmdCharger = CommandeFondPlateau(self, "charger", "img\\cmdVue_ouvrir.png", "Charger un combat", 65, 15, 30, 60)
+        self.cmdCharger = CommandeFondPlateau(self, "charger", ":/interface/512/ressource/dossier_512.png", "Charger un combat", 65, 15, 30, 60)
         self.cmdCharger.creer()
         self.cmdCharger.creer()
-        self.cmdCreer = CommandeFondPlateau(self, "enCours", "img\\cmdVue_plus.png", "Créer un nouveau combat", 40, 60, 30, 60)
+        self.cmdCreer = CommandeFondPlateau(self, "enCours", ":/interface/512/ressource/plus_512.png", "Créer un nouveau combat", 40, 60, 30, 60)
         self.cmdCreer.creer()
         self.cmdCreer.creer()
 
 
         self.setSceneRect(QRectF())
         self.setSceneRect(QRectF())

+ 10 - 7
lib/Plateau.py

@@ -373,11 +373,14 @@ class Plateau(QGraphicsScene):
     ##### affichage de la liste des creatures enregistrees, et fonctions d'acces aux donnees""""     
     ##### affichage de la liste des creatures enregistrees, et fonctions d'acces aux donnees""""     
     def afficheEcranEditionCombattants(self, creature = None):
     def afficheEcranEditionCombattants(self, creature = None):
         """affiche l'ecran d'edition/creation de creatures"""
         """affiche l'ecran d'edition/creation de creatures"""
-        self.editionCreature = EcranEditionCombattant(creature, self.formeCases)
+        self.editionCreature = EcranEditionCombattant(creature, 0, self.formeCases)
         self.editionCreature.setAttribute(Qt.WA_DeleteOnClose)
         self.editionCreature.setAttribute(Qt.WA_DeleteOnClose)
         r = self.editionCreature.exec_()
         r = self.editionCreature.exec_()
+        combattant = self.editionCreature.combattant
+        enregistrer(combattant.id, combattant, "lib\\biblio\\combattant")
         if r == 1:
         if r == 1:
             self.majListeCreatures()
             self.majListeCreatures()
+        self.editionCreature = None
         
         
     def majListeCreatures(self):
     def majListeCreatures(self):
         """mise a jour de la liste des creatures depuis la sauvegarde"""
         """mise a jour de la liste des creatures depuis la sauvegarde"""
@@ -485,11 +488,11 @@ class Plateau(QGraphicsScene):
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 0, QTableWidgetItem(QString.fromUtf8(str(self.pionSelectionne().attaques.index(attaque)))))
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 0, QTableWidgetItem(QString.fromUtf8(str(self.pionSelectionne().attaques.index(attaque)))))
                 icone = None
                 icone = None
                 if attaque.typ == "cac":
                 if attaque.typ == "cac":
-                    icone = QIcon("img\\curseurEpee.png")
+                    icone = QIcon(":/interface/16/ressource/epee_16.png")
                 if attaque.typ == "dist":
                 if attaque.typ == "dist":
-                    icone = QIcon("img\\arc.png")
+                    icone = QIcon(":/interface/16/ressource/arc_16.png")
                 if attaque.typ == "zone":
                 if attaque.typ == "zone":
-                    icone = QIcon("img\\baguette.png")
+                    icone = QIcon(":/interface/16/ressource/baguette_16.png")
                 if icone != None:
                 if icone != None:
                     self.fenetre.ui.pi_listeAttaques.setItem(i, 1, QTableWidgetItem(icone, QString.fromUtf8("")))
                     self.fenetre.ui.pi_listeAttaques.setItem(i, 1, QTableWidgetItem(icone, QString.fromUtf8("")))
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 2, QTableWidgetItem(QString.fromUtf8(attaque.nom)))  
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 2, QTableWidgetItem(QString.fromUtf8(attaque.nom)))  
@@ -851,11 +854,11 @@ class Plateau(QGraphicsScene):
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 0, QTableWidgetItem(QString.fromUtf8(str(self.pionSelectionne().attaques.index(attaque)))))
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 0, QTableWidgetItem(QString.fromUtf8(str(self.pionSelectionne().attaques.index(attaque)))))
                 icone = None
                 icone = None
                 if attaque.typ == "cac":
                 if attaque.typ == "cac":
-                    icone = QIcon("img\\curseurEpee.png")
+                    icone = QIcon(":/interface/16/ressource/epee_16.png")
                 if attaque.typ == "dist":
                 if attaque.typ == "dist":
-                    icone = QIcon("img\\arc.png")
+                    icone = QIcon(":/interface/16/ressource/arc_16.png")
                 if attaque.typ == "zone":
                 if attaque.typ == "zone":
-                    icone = QIcon("img\\baguette.png")
+                    icone = QIcon(":/interface/16/ressource/baguette_16.png")
                 if icone != None:
                 if icone != None:
                     self.fenetre.ui.pi_listeAttaques.setItem(i, 1, QTableWidgetItem(icone, QString.fromUtf8("")))
                     self.fenetre.ui.pi_listeAttaques.setItem(i, 1, QTableWidgetItem(icone, QString.fromUtf8("")))
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 2, QTableWidgetItem(QString.fromUtf8(attaque.nom)))
                 self.fenetre.ui.pi_listeAttaques.setItem(i, 2, QTableWidgetItem(QString.fromUtf8(attaque.nom)))

BIN
lib/biblio/combattant


+ 2 - 1
lib/framePj.py

@@ -26,7 +26,6 @@ class FramePj(QFrame):
         """construction de l'interface"""
         """construction de l'interface"""
         self.ui = Ui_pj_panneau()
         self.ui = Ui_pj_panneau()
         self.ui.setupUi(self)
         self.ui.setupUi(self)
-##        self.ui.att_voile.setAttribute(Qt.WA_TransparentForMouseEvents)
         for i in range(0, 6):
         for i in range(0, 6):
             bouton = self.findChild(QPushButton, "pj_afficher_{}".format(i))
             bouton = self.findChild(QPushButton, "pj_afficher_{}".format(i))
             self.connect(bouton, SIGNAL("clicked()"), self.afficherFiche)
             self.connect(bouton, SIGNAL("clicked()"), self.afficherFiche)
@@ -64,6 +63,8 @@ class FramePj(QFrame):
         self.editionPj.setAttribute(Qt.WA_DeleteOnClose)
         self.editionPj.setAttribute(Qt.WA_DeleteOnClose)
         r = self.editionPj.exec_()
         r = self.editionPj.exec_()
         self._pj = self.editionPj.combattant
         self._pj = self.editionPj.combattant
+        self.ui.pj_image.chargerImage(pj.logo)
+        self.ui.pj_nom.majTexte(pj.nom)    
         self.signalerModif()
         self.signalerModif()
 
 
 
 

+ 0 - 0
lib/img/Nouvelle image bitmap.bmp


BIN
lib/img/agrandir.png


BIN
lib/img/agrandissement.png


BIN
lib/img/aide.png


BIN
lib/img/arc.png


BIN
lib/img/armes.png


BIN
lib/img/attaque.png


BIN
lib/img/baguette.png


BIN
lib/img/boite_outils.png


BIN
lib/img/bombe.png


BIN
lib/img/bouclier.png


BIN
lib/img/btnCopie.png


BIN
lib/img/btnCouleurs.png


BIN
lib/img/btnCreation.png


BIN
lib/img/btnDeplacer.png


BIN
lib/img/btnEnregistrer.png


BIN
lib/img/btnEntree.png


BIN
lib/img/btnFermer.png


BIN
lib/img/btnSortie.png


BIN
lib/img/btnZonePlacement.png


BIN
lib/img/btn_ModeCombat.png


BIN
lib/img/carte.png


BIN
lib/img/chevalier.png


BIN
lib/img/chimie.png


BIN
lib/img/chimie2.png


BIN
lib/img/cmdVue_cbt.png


BIN
lib/img/cmdVue_ouvrir.png


BIN
lib/img/cmdVue_plus.png


BIN
lib/img/colonne.png


BIN
lib/img/combat3.jpg


BIN
lib/img/combat4.png


BIN
lib/img/cone.png


BIN
lib/img/corbeille.png


BIN
lib/img/creature.png


BIN
lib/img/cur/cur_dep.png


BIN
lib/img/cur/cur_doigt.png


BIN
lib/img/cur/cur_plus.png


BIN
lib/img/cur/cur_style.png


BIN
lib/img/curseur.png


BIN
lib/img/curseurEpee.png


BIN
lib/img/curseurPinceau.png


BIN
lib/img/curseurSeringue.png


BIN
lib/img/de.png


BIN
lib/img/decor.png


BIN
lib/img/dep_pied.png


BIN
lib/img/deplacement.png


BIN
lib/img/deplacement2.png


BIN
lib/img/diamant.png


BIN
lib/img/dragon.png


BIN
lib/img/dragon4.png


BIN
lib/img/eau1.jpg


BIN
lib/img/editer.png


BIN
lib/img/effFeu.jpg


BIN
lib/img/effGlace.jpg


BIN
lib/img/effPoison.png


BIN
lib/img/escalade.png


BIN
lib/img/escalade_24.png


BIN
lib/img/etatEau.png


BIN
lib/img/etatEndormi.png


BIN
lib/img/etatEntrave.png


BIN
lib/img/etatEtourdi.png


BIN
lib/img/etatFeu.png


BIN
lib/img/etatMort.png


BIN
lib/img/etatParalyse.png


BIN
lib/img/etatVol.png


BIN
lib/img/etoile.png


BIN
lib/img/flecheBas.png


BIN
lib/img/flecheDroite.png


BIN
lib/img/flecheDroite2.png


BIN
lib/img/flecheGauche.png


BIN
lib/img/flecheHaut.png


BIN
lib/img/foret.jpg


BIN
lib/img/formeEllipsePlein.png


BIN
lib/img/formeEllipseVide.png


BIN
lib/img/formeLigne.png


BIN
lib/img/formeLigneOrientee.png


BIN
lib/img/formeRectPlein.png


BIN
lib/img/formeRectVide.png


BIN
lib/img/gomme.png


BIN
lib/img/herbe.jpg


BIN
lib/img/herbe2.jpg


BIN
lib/img/interdit.png


BIN
lib/img/ligneBrisee.png


BIN
lib/img/loupe.png


Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff