def drawGSat(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vFen = self.fenetre # Le label zone cachée "réserve" la place du bouton[0] dans le gridder #Label (vFen,text = "zone cachée", bg = "orange",width=9).grid(row = vLigne, column = 1, sticky = E+W) Label(vFen, text="Stations présentes sur le réseau", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 # 14 boutons "Emetteur" Label(vFen, text="Reçu de :").grid(row=vLigne, column=0) for indice in range(0, 15): bouton = Button(vFen, foreground="red", takefocus=1) # width=8 bouton.grid(column=indice, row=vLigne, sticky=E + W) bouton.configure(command=lambda x=indice: self.cliquerRecuDe(x)) if indice == 0: bouton.grid_remove() # Suppression du bouton 0 "Tous" self.boutonE.append(bouton) vLigne += 1 # Données du relevé Label(vFen, text="Informations Relevé Sater ", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 Label(vFen, text="Groupe Date/Heure : ").grid(row=vLigne, column=0, sticky=W) self.efGdh = Commun.gdhWidget(self.root, vFen) self.efGdh.grid(row=vLigne, column=1, columnspan=2, sticky=W) self.bGdh = Button(self.fenetre, bd=1, fg="blue", text="Forcer", command=self.forcerGDH, underline=0) # , width = 8 self.bGdh.grid(row=vLigne, column=3) vLigne += 1 Label(vFen, text="Emis par : ").grid(row=vLigne, column=0, sticky=W) self.cbEmetteur = Commun.indicatifWidget(self.root, vFen, self.root) self.cbEmetteur.grid(row=vLigne, column=1, columnspan=3, sticky=W) Label(vFen, text="Reçu par : ").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.cbDestinataire = Commun.indicatifWidget(self.root, vFen, self.root) self.cbDestinataire.grid(row=vLigne, column=6, columnspan=3, sticky=W) vLigne += 2 Label(vFen, text="Système : ").grid(row=vLigne, column=0, sticky=W) self.cbSysteme = Commun.comboWidget(self.root, vFen, self.root.cfgListe['Systeme']) self.cbSysteme.grid(row=vLigne, column=1, columnspan=3, sticky=W) Label(vFen, text="Datum : ").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.cbDatum = Commun.comboWidget(self.root, vFen, self.root.cfgListe['Datum']) self.cbDatum.grid(row=vLigne, column=6, columnspan=3, sticky=W) vLigne += 1 Label(vFen, text="Coordonnée X :").grid(row=vLigne, column=0, sticky=W) self.efCoordX = Commun.coordWidget(self.root, vFen) self.efCoordX.grid(row=vLigne, column=1, columnspan=2, sticky=W) Label(vFen, text="Coordonnée Y :").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.efCoordY = Commun.coordWidget(self.root, vFen) self.efCoordY.grid(row=vLigne, column=6, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Direction du relevé :").grid(row=vLigne, column=0, sticky=W) self.efDir = Pmw.EntryField(vFen, validate={ "max": 5, "maxstrict": False, "validator": Commun.nonVideValidator }) self.efDir.grid(row=vLigne, column=1, columnspan=2, sticky=W) Label(vFen, text="Force du signal :").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.efForce = Pmw.EntryField(vFen, validate={ "max": 5, "maxstrict": False }) self.efForce.grid(row=vLigne, column=6, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Commentaire : ").grid(row=vLigne, column=0, sticky=W) self.efComment = Pmw.EntryField(vFen, validate={ "max": 80, "maxstrict": False }) self.efComment.grid(row=vLigne, column=1, columnspan=8, sticky=E + W) vLigne += 1 self.bValider = Button(vFen, text="Valider", command=self.validerGSat, fg="red", underline=0) self.bValider.grid(row=vLigne, column=2, columnspan=2, sticky=E + W, padx=5, pady=5) self.bEffacer = Button(vFen, text="Effacer", command=self.effacerGSat, fg="red", underline=0) self.bEffacer.grid(row=vLigne, column=4, columnspan=2, sticky=E + W, padx=5, pady=5) self.bQuitter = Button(vFen, text="Quitter", command=self.quitterGSat, fg="red", underline=0) self.bQuitter.grid(row=vLigne, column=7, columnspan=2, sticky=E + W, padx=5, pady=5) vLigne += 1 # Dernières infos de la vacation Label(vFen, text="Derniers relevés enregistrés", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 fLog = Frame(vFen) fLog.grid(row=vLigne, column=0, columnspan=16) sbListe = Scrollbar(fLog, orient=VERTICAL) self.lbListe = Listbox(fLog, height=15, width=140, font=self.root.fonteFixe, yscrollcommand=sbListe.set) self.lbListe.grid(row=vLigne, column=0, sticky=E + W) sbListe.config(command=self.lbListe.yview) sbListe.grid(row=vLigne, column=1, sticky=N + S)
def dessineBILSEC(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vFen = self.fenetre # Composants de la fenêtre Label(vFen, text="Informations transmission", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 Label(vFen, text="Groupe Date/Heure : ").grid(row=vLigne, column=0, sticky=W) self.efGdh = Commun.gdhWidget(vFen, vFen) self.efGdh.grid(row=vLigne, column=1, columnspan=2, sticky=W) self.iGdh = IntVar() self.ckGdh = Checkbutton( vFen, text="Recalculer le GDH lors de la validation", variable=self.iGdh) self.ckGdh.grid(row=vLigne, column=3, columnspan=3, sticky=W) vLigne += 1 Label(vFen, text="Emis par : ").grid(row=vLigne, column=0, sticky=W) self.cbEmetteur = Commun.indicatifWidget(vFen, vFen, self.root) self.cbEmetteur.grid(row=vLigne, column=1, columnspan=2, sticky=W) Label(vFen, text="Reçu par : ").grid(row=vLigne, column=3, sticky=W) self.cbDestinataire = Commun.indicatifWidget(vFen, vFen, self.root) self.cbDestinataire.grid(row=vLigne, column=4, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Instructions particulières : ").grid(row=vLigne, column=0, sticky=W) self.eInstruc = Entry(vFen) self.eInstruc.grid(row=vLigne, column=1, columnspan=6, sticky=W + E) vLigne += 1 Label(vFen, text="Bilan Secouriste", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(vFen, text="Entête du message", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 Label(vFen, text="Origine : ").grid(row=vLigne, column=0, sticky=W) self.efOrigine = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efOrigine.grid(row=vLigne, column=1, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Action : ").grid(row=vLigne, column=0, sticky=W) self.efDestAction = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efDestAction.grid(row=vLigne, column=1, columnspan=4, sticky=E + W) Label(vFen, text="(utilisez le / comme séparateur)").grid(row=vLigne, rowspan=2, column=5, columnspan=3, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Info : ").grid(row=vLigne, column=0, sticky=W) self.eDestInfo = Entry(vFen) self.eDestInfo.grid(row=vLigne, column=1, columnspan=4, sticky=E + W) vLigne += 1 Label(vFen, text="Degré d'Urgence : ").grid(row=vLigne, column=0, sticky=W) self.cbDegUrg = Commun.comboWidget(self.root, vFen, self.root.cfgListe['DegUrg']) self.cbDegUrg.grid(row=vLigne, column=1, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Corps de message", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 self.notebook = Pmw.NoteBook(vFen) self.notebook.grid(row=vLigne, column=0, columnspan=9, sticky=W + E) self.nbTab1 = self.notebook.add('Bilan Circonstancié') self.nbTab1.grid_columnconfigure(0, weight=2) self.nbTab1.grid_columnconfigure(2, weight=1) self.nbTab1.grid_columnconfigure(3, weight=2) self.nbTab1.grid_columnconfigure(5, weight=1) self.nbTab1.grid_columnconfigure(6, weight=2) self.nbTab1.grid_columnconfigure(8, weight=2) # Victime Label(self.nbTab1, text="Identité de la Victime", fg="blue", bg="darkgrey").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(self.nbTab1, text="Num Victime (ou dossard) : ").grid(row=vLigne, column=0, sticky=W) self.efNum = Pmw.EntryField(self.nbTab1, validate=Commun.nonVideValidator) self.efNum.component('entry').config(width=8) self.efNum.grid(row=vLigne, column=1, sticky=W) self.bNum = Button(self.nbTab1, width=8, bd=1, fg="blue", text="Num. Auto", command=self.numAuto, underline=0) self.bNum.grid(row=vLigne, column=2) Label(self.nbTab1, text="Age / Date de naissance :").grid(row=vLigne, column=3, sticky=W) self.eAge = Entry(self.nbTab1) self.eAge.grid(row=vLigne, column=4, sticky=W) Label(self.nbTab1, text="Sexe :").grid(row=vLigne, column=6, sticky=W) self.rbSexe = Pmw.RadioSelect(self.nbTab1, buttontype="radiobutton", pady=0) self.rbSexe.grid(row=vLigne, column=7, sticky=W) self.rbSexe.add("H") self.rbSexe.add("F") vLigne += 1 Label(self.nbTab1, text="Nom - Prénom :").grid(row=vLigne, column=0, sticky=W) self.eNom = Entry(self.nbTab1) self.eNom.grid(row=vLigne, column=1, columnspan=4, sticky=W + E) vLigne += 1 Label(self.nbTab1, text="Adresse :").grid(row=vLigne, column=0, sticky=W) self.eAdr = Entry(self.nbTab1) self.eAdr.grid(row=vLigne, column=1, columnspan=6, sticky=W + E) vLigne += 1 # Détresse Label(self.nbTab1, text="Nature de la Détresse", fg="blue", bg="darkgrey").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(self.nbTab1, text="Nature : ").grid(row=vLigne, column=0, sticky=W) self.cbNature = Commun.comboWidget(self.root, self.nbTab1, self.root.cfgListe['Nature']) self.cbNature.grid(row=vLigne, column=1, columnspan=2, sticky=W) Label(self.nbTab1, text="Détresse Vitale : ").grid(row=vLigne, column=3, sticky=W) self.cbVitale = Commun.comboWidget(self.root, self.nbTab1, self.root.cfgListe['Detresse']) self.cbVitale.grid(row=vLigne, column=4, columnspan=2, sticky=W) Label(self.nbTab1, text="Tri PMA : ").grid(row=vLigne, column=6, sticky=W) self.cbUrgence = Commun.comboWidget(self.root, self.nbTab1, self.root.cfgListe['Urgence']) self.cbUrgence.grid(row=vLigne, column=7, columnspan=2, sticky=W) vLigne += 1 Label(self.nbTab1, text="Circonstances :").grid(row=vLigne, column=0, sticky=W) self.stCirc = ScrolledText(self.nbTab1, wrap="word", height=3) self.stCirc.grid(row=vLigne, column=1, columnspan=6, sticky=W + E) vLigne += 1 self.nbTab2 = self.notebook.add('Bilan Vital') # Conscience self.fConsc = LabelFrame(self.nbTab2, bd=2) self.fConsc.grid(row=vLigne, column=0, columnspan=3, sticky=N + S) Label(self.fConsc, text="Conscience", fg="blue", bg="darkgrey").grid(row=vLigne, column=0, columnspan=3, sticky=W + E) self.rbConsc = Pmw.RadioSelect(self.fConsc, buttontype="radiobutton", labelpos=W, label_text="Victime :", pady=0) self.rbConsc.grid(row=vLigne + 1, column=0, columnspan=2, sticky=W) self.rbConsc.add("Consciente") self.rbConsc.add("Inconsciente") self.rsConsc = Pmw.RadioSelect(self.fConsc, buttontype='checkbutton') self.rsConsc.grid(row=vLigne + 2, column=0, columnspan=3, sticky=W + E) for txt in ("Agitée", "Somnolente", "Désorientée", "Nausée"): self.rsConsc.add(txt) self.iPCI = IntVar() self.ckPCI = Checkbutton(self.fConsc, text="PCI :", variable=self.iPCI, command=self.cocherPCI) self.ckPCI.grid(row=vLigne + 3, column=0, sticky=E) self.eTmpPci = Entry(self.fConsc) self.eTmpPci.grid(row=vLigne + 3, column=1, sticky=W) # Ventilation self.fVentil = LabelFrame(self.nbTab2, bd=2) self.fVentil.grid(row=vLigne, column=3, columnspan=3, sticky=N + S) Label(self.fVentil, text="Ventilation", fg="blue", bg="darkgrey").grid(row=vLigne, column=3, columnspan=3, sticky=W + E) Label(self.fVentil, text="Fréquence :").grid(row=vLigne + 1, column=3, pady=2, sticky=W) self.efFreqVent = Pmw.EntryField(self.fVentil, validate=Commun.nonVideValidator) self.efFreqVent.grid(row=vLigne + 1, column=4, sticky=W) self.rsVentil = Pmw.RadioSelect(self.fVentil, buttontype='checkbutton') self.rsVentil.grid(row=vLigne + 2, column=3, columnspan=3, sticky=W + E) for txt in ("Ample", "Régulière", "Cyanose", "Sueurs"): self.rsVentil.add(txt) Label(self.fVentil, text="Saturation :").grid(row=vLigne + 3, column=3, pady=1, sticky=W) self.eSat02 = Entry(self.fVentil) self.eSat02.grid(row=vLigne + 3, column=4, sticky=W) # Circulation self.fCircul = LabelFrame(self.nbTab2, bd=2) self.fCircul.grid(row=vLigne, column=6, columnspan=3, sticky=N + S) Label(self.fCircul, text="Circulation", fg="blue", bg="darkgrey").grid(row=vLigne, column=6, columnspan=3, sticky=W + E) Label(self.fCircul, text="Fréquence :").grid(row=vLigne + 1, column=6, pady=2, sticky=W) self.efFreqCirc = Pmw.EntryField(self.fCircul, validate=Commun.nonVideValidator) self.efFreqCirc.grid(row=vLigne + 1, column=7, sticky=W) self.rsCircul = Pmw.RadioSelect(self.fCircul, buttontype='checkbutton') self.rsCircul.grid(row=vLigne + 2, column=6, columnspan=3, sticky=W + E) for txt in ("Régulier", "Frappé", "Pâleur", "Pouls radial"): self.rsCircul.add(txt) Label(self.fCircul, text="Tension :").grid(row=vLigne + 3, column=6, pady=1, sticky=W) self.eTension = Entry(self.fCircul) self.eTension.grid(row=vLigne + 3, column=7, sticky=W) vLigne += 4 # Pupilles Label(self.nbTab2, text="Réflexes Pupillaires", fg="blue", bg="darkgrey").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(self.nbTab2, text="Pupille Gauche :").grid(row=vLigne, column=0, sticky=W) self.cbPupGauche = Commun.comboWidget(self.root, self.nbTab2, self.root.cfgListe['pupille']) self.cbPupGauche.grid(row=vLigne, column=1, sticky=W) self.iPupGauche = IntVar() self.ckPupGauche = Checkbutton(self.nbTab2, text="Réactive", variable=self.iPupGauche) self.ckPupGauche.grid(row=vLigne, column=2, sticky=W) Label(self.nbTab2, text="Pupille Droite :").grid(row=vLigne, column=4, sticky=W) self.cbPupDroite = Commun.comboWidget(self.root, self.nbTab2, self.root.cfgListe['pupille']) self.cbPupDroite.grid(row=vLigne, column=5, sticky=W) self.iPupDroite = IntVar() self.ckPupDroite = Checkbutton(self.nbTab2, text="Réactive", variable=self.iPupDroite) self.ckPupDroite.grid(row=vLigne, column=6, sticky=W) vLigne += 1 self.nbTab3 = self.notebook.add('Bilan Lésionnel') self.nbTab3.grid_columnconfigure(0, weight=2) self.nbTab3.grid_columnconfigure(10, weight=2) # Lésions Label(self.nbTab3, text="Lésions", fg="blue", bg="darkgrey").grid(row=vLigne, column=0, columnspan=11, sticky=W + E) vLigne += 1 vLibLesion = [ "Hémorragie ", "Déformation", " Douleur ", " Plaie ", " Brûlure ", " Motricité ", "Sensibilité", " Chaleur ", "Coloration" ] for index in range(9): Label(self.nbTab3, text=vLibLesion[index]).grid(row=vLigne, column=index + 1, sticky=W + E) vLigne += 1 for i in range(5): cbLesion = Commun.comboWidget(self.root, self.nbTab3, self.root.cfgListe['Lesion']) cbLesion.grid(row=vLigne, column=0, sticky=E) vCodLesion = ["H", "F", "D", "P", "B", "M", "S", "C", "K"] self.listeCkLesion = [] for index in range(9): iCk = IntVar() ck = Checkbutton(self.nbTab3, text=vCodLesion[index] + str(i), variable=iCk, width=8) ck.grid(row=vLigne, column=index + 1) self.listeCkLesion.append(iCk) vLigne += 1 self.ligneLesion.append((cbLesion, self.listeCkLesion)) Label(self.nbTab3, text="Autres lésions").grid(row=vLigne, column=1, sticky=W) self.eAutreLes = Entry(self.nbTab3) self.eAutreLes.grid(row=vLigne, column=2, columnspan=7, sticky=W + E) vLigne += 1 self.nbTab4 = self.notebook.add('Gestes et Soins') self.nbTab4.grid_columnconfigure(0, weight=2) self.nbTab4.grid_columnconfigure(2, weight=1) self.nbTab4.grid_columnconfigure(3, weight=2) self.nbTab4.grid_columnconfigure(5, weight=1) self.nbTab4.grid_columnconfigure(6, weight=2) self.nbTab4.grid_columnconfigure(8, weight=1) # Antécédants Label(self.nbTab4, text="Gestes et Soins", fg="blue", bg="darkgrey").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(self.nbTab4, text="Gestes effectués :").grid(row=vLigne, column=0, sticky=W) self.stGestes = ScrolledText(self.nbTab4, wrap="word", height=3) self.stGestes.grid(row=vLigne, column=1, columnspan=6, sticky=W + E) vLigne += 1 Label(self.nbTab4, text="Soins effectués :").grid(row=vLigne, column=0, sticky=W) self.stSoins = ScrolledText(self.nbTab4, wrap="word", height=3) self.stSoins.grid(row=vLigne, column=1, columnspan=6, sticky=W + E) vLigne += 1 # Evacuation Label(self.nbTab4, text="Evacuation", fg="blue", bg="darkgrey").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(self.nbTab4, text="Prise en Charge :").grid(row=vLigne, column=0, sticky=W) self.cbCondi = Pmw.ComboBox( self.nbTab4, scrolledlist_items=self.root.cfgListe['conditionnement'], listheight=80) self.cbCondi.grid(row=vLigne, column=1, sticky=W) Label(self.nbTab4, text="Evacuation :").grid(row=vLigne, column=3, sticky=W) self.cbEvac = Pmw.ComboBox( self.nbTab4, scrolledlist_items=self.root.cfgListe['evacuation'], listheight=80) self.cbEvac.grid(row=vLigne, column=4, sticky=W) Label(self.nbTab4, text="Destination : ").grid(row=vLigne, column=6, sticky=W) self.eDest = Entry(self.nbTab4) self.eDest.grid(row=vLigne, column=7) vLigne += 1 self.notebook.setnaturalsize() Label(vFen, text="Final du message ", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 Label(vFen, text="GDH Dépôt/Rédaction : ").grid(row=vLigne, column=0, sticky=W) self.efGdhDep = Commun.gdhWidget(vFen, vFen) self.efGdhDep.grid(row=vLigne, column=1, sticky=W) self.rbACK = Pmw.RadioSelect( vFen, buttontype="radiobutton", labelpos=W, label_text="Demande Accusé de Réception : ") self.rbACK.grid(row=vLigne, column=3, columnspan=3, sticky=W) self.rbACK.add("Oui") self.rbACK.add("Non") vLigne += 1 Label(vFen, text="Fin de Message", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 Button(vFen, text="Valider", command=self.validerBILSEC, fg="red", underline=0).grid(row=vLigne, column=1, padx=5, pady=5, sticky=W + E) Button(vFen, text="Annuler", command=self.annulerBILSEC, fg="red", underline=1).grid(row=vLigne, column=4, padx=5, pady=5, sticky=W + E) Button(vFen, text="Quitter", command=self.quitterBILSEC, fg="red", underline=0).grid(row=vLigne, column=7, padx=5, pady=5, sticky=W + E)
def dessinePOI(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vFen = self.fenetre # Composants de la fenêtre Label (vFen,text = "Informations Transmission ", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 12, sticky = E+W) vLigne += 1 Label (vFen, text = "Groupe Date/Heure : ").grid(row = vLigne, column = 0, sticky = W) self.efGdh = Commun.gdhWidget(vFen, vFen) self.efGdh.grid(row = vLigne, column = 1, sticky = W) self.iGdh = IntVar() self.ckGdh = Checkbutton (vFen, text = "Recalculer le GDH lors de la validation", variable = self.iGdh) self.ckGdh.grid(row = vLigne, column = 3, columnspan = 3, sticky = W) vLigne += 1 Label (vFen, text = "Emis par : ").grid(row = vLigne, column = 0, sticky = W) self.cbEmetteur = Commun.indicatifWidget(vFen, vFen, self.root) self.cbEmetteur.grid (row = vLigne, column = 1, sticky = W) Label (vFen, text = "Reçu par : ").grid(row = vLigne, column = 3, sticky = W) self.cbDestinataire = Commun.indicatifWidget(vFen, vFen, self.root) self.cbDestinataire.grid (row = vLigne, column = 4, sticky = W) vLigne += 1 Label (vFen, text = "Degré d'Urgence : ").grid(row = vLigne, column = 0, sticky = W ) self.cbDegUrg = Commun.comboWidget (self.root, vFen, self.root.cfgListe['DegUrgOBNT']) self.cbDegUrg.grid (row = vLigne, column = 1, columnspan = 2, sticky = W) vLigne += 1 Label (vFen, text = "Instructions particulières : ").grid(row = vLigne, column = 0, sticky = W) self.eInstruc = Entry (vFen) self.eInstruc.grid (row = vLigne, column = 1, columnspan = 4, sticky = W+E) vLigne += 1 Label (vFen,text = "Informations Point Particulier", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 8, sticky = W+E) vLigne += 1 Label (vFen, text = "Système : ").grid(row = vLigne, column = 0, sticky = W ) self.cbSysteme = Commun.comboWidget (self.root, vFen, self.root.cfgListe['Systeme']) self.cbSysteme.grid (row = vLigne, column = 1, columnspan = 2, sticky = W) Label (vFen, text = "Datum : ").grid(row = vLigne, column = 3, sticky = W ) self.cbDatum = Commun.comboWidget (self.root, vFen, self.root.cfgListe['Datum']) self.cbDatum.grid (row = vLigne, column = 4, columnspan = 2, sticky = W) vLigne += 1 Label (vFen, text = "Coordonnée X :").grid(row = vLigne, column = 0, sticky = W) self.efCoordX = Commun.coordWidget(self.root, vFen) self.efCoordX.grid (row = vLigne, column = 1, sticky = W) Label (vFen, text = "Coordonnée Y :").grid(row = vLigne, column = 3, sticky = W) self.efCoordY = Commun.coordWidget(self.root, vFen) self.efCoordY.grid ( row = vLigne, column = 4, sticky = W) vLigne += 1 Label (vFen, text = "Type de point :").grid(row = vLigne, column = 0, sticky = W) self.cbTypReleve = Pmw.ComboBox (vFen, scrolledlist_items = self.root.cfgListe['TypReleve'], listheight = 100) self.cbTypReleve.grid ( row = vLigne, column = 1, sticky = W+E) vLigne += 1 Label (vFen, text = "Caractéristiques : " ).grid( row = vLigne, column = 0, sticky = W ) self.efDetail = Pmw.EntryField(vFen) self.efDetail.grid ( row = vLigne, column = 1, columnspan = 4, sticky = W+E) vLigne += 1 Label (vFen,text = "Commentaire : ").grid(row = vLigne, column = 0, sticky = W) self.eTexte = Entry (vFen) self.eTexte.grid (row = vLigne, column = 1, columnspan = 4, sticky = E+W) vLigne += 3 Label (vFen,text = "Fin de message ", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 12, sticky = E+W) vLigne += 1 Button (vFen, text="Valider", command = self.validerPOI, fg="red", underline = 0).grid(row=vLigne, column=0, padx=5, pady=5) Button (vFen, text="Annuler", command = self.annulerPOI, fg="red", underline = 1).grid(row=vLigne, column=2, padx=5, pady=5) Button (vFen, text="Quitter", command = self.quitterPOI, fg="red", underline = 0).grid(row=vLigne, column=4, padx=5, pady=5)
def dessineOBNT(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vNomBouton = "" vIndice = 0 vFen = self.fenetre # Composants de la fenêtre Label(vFen, text="Informations transmission", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=8, sticky=E + W) vLigne += 1 Label(vFen, text="Groupe Date/Heure : ").grid(row=vLigne, column=0, sticky=W) self.efGdh = Commun.gdhWidget(vFen, vFen) self.efGdh.grid(row=vLigne, column=1, sticky=W) self.iGdh = IntVar() self.ckGdh = Checkbutton( vFen, text="Recalculer le GDH lors de la validation", variable=self.iGdh) self.ckGdh.grid(row=vLigne, column=2, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Emis par : ").grid(row=vLigne, column=0, sticky=W) self.cbEmetteur = Commun.indicatifWidget(vFen, vFen, self.root) self.cbEmetteur.grid(row=vLigne, column=1, sticky=W) Label(vFen, text="Reçu par : ").grid(row=vLigne, column=2, sticky=W) self.cbDestinataire = Commun.indicatifWidget(vFen, vFen, self.root) self.cbDestinataire.grid(row=vLigne, column=3, sticky=W) vLigne += 1 Label(vFen, text="Instructions particulières : ").grid(row=vLigne, column=0, sticky=W) self.eInstruc = Entry(vFen) self.eInstruc.grid(row=vLigne, column=1, columnspan=3, sticky=W + E) vLigne += 1 Label(vFen, text="Message OBNT", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=8, sticky=E + W) vLigne += 1 Label(vFen, text="Entête du message", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=6, sticky=E + W) vLigne += 1 Label(vFen, text="Origine : ").grid(row=vLigne, column=0, sticky=W) self.efOrigine = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efOrigine.grid(row=vLigne, column=1, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Action : ").grid(row=vLigne, column=0, sticky=W) self.efDestAction = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efDestAction.grid(row=vLigne, column=1, columnspan=2, sticky=E + W) Label(vFen, text="(utilisez le / comme séparateur)").grid(row=vLigne, rowspan=2, column=3, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Info : ").grid(row=vLigne, column=0, sticky=W) self.eDestInfo = Entry(vFen) self.eDestInfo.grid(row=vLigne, column=1, columnspan=2, sticky=E + W) vLigne += 1 Label(vFen, text="Degré d'Urgence : ").grid(row=vLigne, column=0, sticky=W) self.cbDegUrg = Commun.comboWidget(self.root, vFen, self.root.cfgListe['DegUrgOBNT']) self.cbDegUrg.grid(row=vLigne, column=1, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Corps du message ", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=6, sticky=E + W) vLigne += 1 Label(vFen, text="Objet : ").grid(row=vLigne, column=0, sticky=W) self.efObjet = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efObjet.grid(row=vLigne, column=1, columnspan=3, sticky=E + W) vLigne += 1 Label(vFen, text="Référence : ").grid(row=vLigne, column=0, sticky=W) self.eRef = Entry(vFen) self.eRef.grid(row=vLigne, column=1, columnspan=2, sticky=E + W) vLigne += 1 Label(vFen, text="Message : ").grid(row=vLigne, column=0, sticky=W) self.stMessage = ScrolledText(vFen, wrap="word", height=12) self.stMessage.grid(row=vLigne, column=1, columnspan=4, sticky=E + W) vLigne += 12 Label(vFen, text="Final du message ", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=6, sticky=E + W) vLigne += 1 Label(vFen, text="GDH Dépôt/Rédaction : ").grid(row=vLigne, column=0, sticky=W) self.efGdhDep = Commun.gdhWidget(vFen, vFen) self.efGdhDep.grid(row=vLigne, column=1, sticky=W) self.rbACK = Pmw.RadioSelect( vFen, buttontype="radiobutton", labelpos=W, label_text="Demande Accusé de Réception : ") self.rbACK.grid(row=vLigne, column=3, columnspan=2, sticky=W) self.rbACK.add("Oui") self.rbACK.add("Non") vLigne += 1 Label(vFen, text="Fin de Message ", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=8, sticky=E + W) vLigne += 1 Button(vFen, text="Valider", command=self.validerOBNT, fg="red", underline=0).grid(row=vLigne, column=0, padx=5, pady=5, sticky=E + W) Button(vFen, text="Annuler", command=self.annulerOBNT, fg="red", underline=1).grid(row=vLigne, column=2, padx=5, pady=5, sticky=E + W) Button(vFen, text="Quitter", command=self.quitterOBNT, fg="red", underline=0).grid(row=vLigne, column=4, padx=5, pady=5, sticky=E + W)
def dessineTMD(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vFen = self.fenetre # Composants de la fenêtre Label(vFen, text="Informations transmission", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(vFen, text="Groupe Date/Heure : ").grid(row=vLigne, column=0, sticky=W) self.efGdh = Commun.gdhWidget(vFen, vFen) self.efGdh.grid(row=vLigne, column=1, sticky=W) self.iGdh = IntVar() self.ckGdh = Checkbutton( vFen, text="Recalculer le GDH lors de la validation", variable=self.iGdh) self.ckGdh.grid(row=vLigne, column=3, columnspan=3, sticky=W) vLigne += 1 Label(vFen, text="Emis par : ").grid(row=vLigne, column=0, sticky=W) self.cbEmetteur = Commun.indicatifWidget(vFen, vFen, self.root) self.cbEmetteur.grid(row=vLigne, column=1, sticky=W) Label(vFen, text="Reçu par : ").grid(row=vLigne, column=3, sticky=W) self.cbDestinataire = Commun.indicatifWidget(vFen, vFen, self.root) self.cbDestinataire.grid(row=vLigne, column=4, sticky=W + E) vLigne += 1 Label(vFen, text="Instructions particulières : ").grid(row=vLigne, column=0, sticky=W) self.eInstruc = Entry(vFen) self.eInstruc.grid(row=vLigne, column=1, columnspan=4, sticky=W + E) vLigne += 1 Label(vFen, text="Message Transport Matières Dangereuses", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=9, sticky=W + E) vLigne += 1 Label(vFen, text="Entête du Message", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 Label(vFen, text="Origine : ").grid(row=vLigne, column=0, sticky=W) self.efOrigine = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efOrigine.grid(row=vLigne, column=1, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Action : ").grid(row=vLigne, column=0, sticky=W) self.efDestAction = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efDestAction.grid(row=vLigne, column=1, columnspan=3, sticky=W + E) Label(vFen, text="(utilisez le / comme séparateur)").grid(row=vLigne, rowspan=2, column=4, columnspan=5, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Info : ").grid(row=vLigne, column=0, sticky=W) self.eDestInfo = Entry(vFen) self.eDestInfo.grid(row=vLigne, column=1, columnspan=3, sticky=W + E) vLigne += 1 Label(vFen, text="Degré d'Urgence : ").grid(row=vLigne, column=0, sticky=W) self.cbDegUrg = Commun.comboWidget(self.root, vFen, self.root.cfgListe['DegUrgOBNT']) self.cbDegUrg.grid(row=vLigne, column=1, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Corps de message", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 self.notebook = Pmw.NoteBook(vFen) self.notebook.grid(row=vLigne, column=0, columnspan=9, sticky=W + E) self.nbTab1 = self.notebook.add('Véhicule') vLig = 0 Label(self.nbTab1, text="Description du véhicule", fg="blue", bg="darkgrey").grid(row=vLig, column=0, columnspan=9, sticky=W + E) vLig += 1 Label(self.nbTab1, text="Véhicule : ").grid(row=vLig, column=0, sticky=W) self.cbVehicule = Commun.comboWidget(self.root, self.nbTab1, self.root.cfgListe['Vehicule']) self.cbVehicule.grid(row=vLig, column=1, columnspan=2, sticky=W + E) Label(self.nbTab1, text="Type : ").grid(row=vLig, column=3, sticky=W) self.cbTypVeh = Commun.comboWidget(self.root, self.nbTab1, self.root.cfgListe['TypVeh']) self.cbTypVeh.grid(row=vLig, column=4, columnspan=2, sticky=W + E) Label(self.nbTab1, text="Poids (T) : ").grid(row=vLig, column=6, sticky=W) self.ePoidsVeh = Entry(self.nbTab1) self.ePoidsVeh.grid(row=vLig, column=7, sticky=E + W) vLig += 1 Label(self.nbTab1, text="Capacité (m3) : ").grid(row=vLig, column=0, sticky=W) self.eCapCit = Entry(self.nbTab1) self.eCapCit.grid(row=vLig, column=1, sticky=W) Label(self.nbTab1, text="Volume du Fret (m3) : ").grid(row=vLig, column=3, sticky=W) self.eVolMat = Entry(self.nbTab1) self.eVolMat.grid(row=vLig, column=4, sticky=W) Label(self.nbTab1, text="Poids du Fret (T) : ").grid(row=vLig, column=6, sticky=W) self.ePoidsFret = Entry(self.nbTab1) self.ePoidsFret.grid(row=vLig, column=7, sticky=W) vLig += 1 Label(self.nbTab1, text="Nb compartiments calorifugés : ").grid(row=vLig, column=0, sticky=W) self.eCompart = Entry(self.nbTab1) self.eCompart.grid(row=vLig, column=1, sticky=W) Label(self.nbTab1, text="Syst. de réchauffage : ").grid(row=vLig, column=3, sticky=W) self.eRechauf = Entry(self.nbTab1) self.eRechauf.grid(row=vLig, column=4, sticky=W) Label(self.nbTab1, text="Syst. refrigérant : ").grid(row=vLig, column=6, sticky=W) self.eRefrig = Entry(self.nbTab1) self.eRefrig.grid(row=vLig, column=7, sticky=W) vLig += 1 self.nbTab2 = self.notebook.add('Fret') self.nbTab2.grid_columnconfigure(0, weight=2) self.nbTab2.grid_columnconfigure(9, weight=2) vLig = 0 Label(self.nbTab2, text="Conditionnement du Fret", fg="blue", bg="darkgrey").grid(row=vLig, column=0, columnspan=11, sticky=W + E) vLig += 1 Label(self.nbTab2, text="Conditionnement").grid(row=vLig, column=2, sticky=W) Label(self.nbTab2, text="Nombre").grid(row=vLig, column=4, sticky=W) Label(self.nbTab2, text="Poids ou Volume").grid(row=vLig, column=5, sticky=W) vLig += 1 self.cbCond = Commun.comboWidget(self.root, self.nbTab2, self.root.cfgListe['Cond']) self.cbCond.grid(row=vLig, column=2, sticky=W) self.eNbCond = Entry(self.nbTab2) self.eNbCond.grid(row=vLig, column=4, sticky=W) self.ePoidsCond = Entry(self.nbTab2) self.ePoidsCond.grid(row=vLig, column=5, sticky=W) vLig += 1 Label(self.nbTab2, text="Sous-Emballage").grid(row=vLig, column=1, sticky=W) Label(self.nbTab2, text="Matiere").grid(row=vLig, column=2, sticky=W) Label(self.nbTab2, text="Quantité").grid(row=vLig, column=4, sticky=W) Label(self.nbTab2, text="Poids ou Volume").grid(row=vLig, column=5, sticky=W) vLig += 1 for i in range(4): cbRecipient = Commun.comboWidget(self.root, self.nbTab2, self.root.cfgListe['Recipient']) cbRecipient.grid(row=vLig + i, column=1, sticky=W) cbMatiereSac = Commun.comboWidget(self.root, self.nbTab2, self.root.cfgListe['Matiere']) cbMatiereSac.grid(row=vLig + i, column=2, sticky=W) efQte = Pmw.EntryField(self.nbTab2) efQte.grid(row=vLig + i, column=4, sticky=W) efPoids = Pmw.EntryField(self.nbTab2) efPoids.grid(row=vLig + i, column=5, sticky=W) self.emballage.append((cbRecipient, cbMatiereSac, efQte, efPoids)) # Masquer des comboBox jusqu'au setnaturalsize pour pbm d'affichage cbRecipient.grid_remove() cbMatiereSac.grid_remove() self.nbTab3 = self.notebook.add('Transporteur') self.nbTab3.grid_columnconfigure(0, weight=2) self.nbTab3.grid_columnconfigure(9, weight=2) vLig = 0 Label(self.nbTab3, text="Identification du Transporteur", fg="blue", bg="darkgrey").grid(row=vLig, column=0, columnspan=11, sticky=W + E) vLig += 1 Label(self.nbTab3, text="Nom : ").grid(row=vLig, column=0, sticky=W) self.eNom = Entry(self.nbTab3) self.eNom.grid(row=vLig, column=1, columnspan=3, sticky=W + E) Label(self.nbTab3, text="Tel/Fax : ").grid(row=vLig, column=4, sticky=W) self.eTel = Entry(self.nbTab3) self.eTel.grid(row=vLig, column=6, sticky=W) vLig += 1 Label(self.nbTab3, text="Adresse : ").grid(row=vLig, column=0, sticky=W) self.eAdr = Entry(self.nbTab3) self.eAdr.grid(row=vLig, column=1, columnspan=6, sticky=E + W) vLig += 1 Label(self.nbTab3, text="Immat. véhicule : ").grid(row=vLig, column=0, sticky=W) self.eImmat = Entry(self.nbTab3) self.eImmat.grid(row=vLig, column=1, sticky=W) Label(self.nbTab3, text="Nationalité : ").grid(row=vLig, column=4, sticky=W) self.eNation = Entry(self.nbTab3) self.eNation.grid(row=vLig, column=6, sticky=W) vLig += 1 Label(self.nbTab3, text="Expéditeur Fret : ").grid(row=vLig, column=0, sticky=W) self.eExped = Entry(self.nbTab3) self.eExped.grid(row=vLig, column=1, columnspan=3, sticky=W + E) Label(self.nbTab3, text="Destinataire Fret : ").grid(row=vLig, column=4, sticky=W) self.eClient = Entry(self.nbTab3) self.eClient.grid(row=vLig, column=6, columnspan=2, sticky=W + E) vLig += 1 self.notebook.setnaturalsize() # Afficher des comboBox itératives après le setnaturalsize pour pbm d'affichage for ligne in self.emballage: ligne[0].grid() ligne[1].grid() vLigne += 6 Label(vFen, text="Final du message ", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 Label(vFen, text="GDH Dépôt/Rédaction : ").grid(row=vLigne, column=0, sticky=W) self.efGdhDep = Commun.gdhWidget(vFen, vFen) self.efGdhDep.grid(row=vLigne, column=1, sticky=W) self.rbACK = Pmw.RadioSelect( vFen, buttontype="radiobutton", labelpos=W, label_text="Demande Accusé de Réception : ") self.rbACK.grid(row=vLigne, column=4, columnspan=4, sticky=W) self.rbACK.add("Oui") self.rbACK.add("Non") vLigne += 1 Label(vFen, text="Fin de message", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=9, sticky=E + W) vLigne += 1 Button(vFen, text="Valider", command=self.validerTMD, fg="red", underline=0).grid(row=vLigne, column=1, padx=5, pady=5, sticky=W + E) Button(vFen, text="Annuler", command=self.annulerTMD, fg="red", underline=1).grid(row=vLigne, column=4, padx=5, pady=5, sticky=W + E) Button(vFen, text="Quitter", command=self.quitterTMD, fg="red", underline=0).grid(row=vLigne, column=6, padx=5, pady=5, sticky=W + E)
def drawMCI(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants # Composants de la fenêtre vFen = self.fenetre # Liste des stations du réseau Label(vFen, text="Stations présentes sur le réseau", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 # 14 boutons "Emetteur" (le bouton zéro "Tous" est supprimé à la construction) Label(vFen, text="Reçu de :").grid(row=vLigne, column=0) for i in range(0, 15): self._drawBoutonE(i, i + 1, vLigne) vLigne += 1 # 15 boutons "Destinataires" (14 + "Tous") Label(vFen, text="Emis vers :").grid(row=vLigne, column=0) for i in range(0, 15): self._drawBoutonD(i, i + 1, vLigne) vLigne += 1 # Données du trafic Label(vFen, text="Informations transmises", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 # Frame (à droite) des messages prédéfinis self.fBtn = LabelFrame(vFen, bd=2, text=" Messages prédéfinis ", fg="blue") self.fBtn.grid(row=vLigne, column=10, rowspan=5, columnspan=6) self._drawBoutonMSG(0, vLigne, 0) self._drawBoutonMSG(1, vLigne, 1) self._drawBoutonMSG(2, vLigne, 2) self._drawBoutonMSG(3, vLigne + 1, 0) self._drawBoutonMSG(4, vLigne + 1, 1) self._drawBoutonMSG(5, vLigne + 1, 2) self._drawBoutonMSG(6, vLigne + 2, 0) self._drawBoutonMSG(7, vLigne + 2, 1) self._drawBoutonMSG(8, vLigne + 2, 2) # Contrôles standards Label(vFen, text="Gr. Date/Heure : ").grid(row=vLigne, column=0, sticky=W) self.efGdh = Commun.gdhWidget(self.root, vFen) self.efGdh.grid(row=vLigne, column=1, columnspan=2, sticky=W) self.bGdh = Button(vFen, width=5, bd=1, fg="blue", text="Forcer", command=self.forcerGDH, underline=1) # , width = 8 self.bGdh.grid(row=vLigne, column=3) vLigne += 1 Label(vFen, text="De (Emetteur) :").grid(row=vLigne, column=0, sticky=W) # ,columnspan = 1 self.efEmetteur = Pmw.EntryField(vFen, validate={ "validator": Commun.indicatifValidator, "min": 2, "max": 8, "minstrict": False, "maxstrict": False }) self.efEmetteur.component('entry').bind('<Key>', Commun.uppercaseKey) self.efEmetteur.grid(row=vLigne, column=1, columnspan=2, sticky=W) # Label(vFen, text="A (Destinataire) : ").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.efDestinataire = Pmw.EntryField(vFen, validate={ "validator": Commun.indicatifValidator, "min": 2, "max": 8, "minstrict": False, "maxstrict": False }) self.efDestinataire.component('entry').bind('<Key>', Commun.uppercaseKey) self.efDestinataire.grid(row=vLigne, column=6, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Deg. d'urg. :").grid(row=vLigne, column=0, sticky=W) # , columnspan = 2 self.cbDegUrg = Commun.comboWidget(self.root, vFen, self.root.cfgListe['DegUrg']) self.cbDegUrg.grid(row=vLigne, column=1, columnspan=3, sticky=W) Label(vFen, text="Transmis en :").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.cbMoyTrans = Commun.comboWidget(self.root, vFen, self.root.cfgListe['Moyen_RX']) self.cbMoyTrans.grid(row=vLigne, column=6, columnspan=3, rowspan=1, sticky=W) vLigne += 1 Label(vFen, text="Te. du mess. :").grid(row=vLigne, column=0, sticky=W) # ,columnspan = 2 self.efTexte = Pmw.EntryField(vFen, validate={ "min": 1, "max": 80, "minstrict": False, "maxstrict": False }) self.efTexte.grid(row=vLigne, column=1, columnspan=9, sticky=E + W) vLigne += 1 self.bValider = Button(vFen, text="Valider", command=self.validerMCI, fg="red", underline=0) self.bValider.grid(row=vLigne, column=1, columnspan=2, sticky=E + W, padx=5, pady=5) self.bEffacer = Button(vFen, text="Effacer", command=self.effacerMCI, fg="red", underline=0) self.bEffacer.grid(row=vLigne, column=4, columnspan=2, sticky=E + W, padx=5, pady=5) self.bQuitter = Button(vFen, text="Quitter", command=self.quitterMCI, fg="red", underline=0) self.bQuitter.grid(row=vLigne, column=7, columnspan=2, sticky=E + W, padx=5, pady=5) vLigne += 1 # Dernières infos de la vacation Label(vFen, text="Dernières transmissions enregistrées", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 fLog = Frame(vFen) fLog.grid(row=vLigne, column=0, columnspan=16) sbListe = Scrollbar(fLog, orient=VERTICAL) self.lbListe = Listbox(fLog, height=15, width=140, font=self.root.fonteFixe, yscrollcommand=sbListe.set) self.lbListe.grid(row=vLigne, column=0, sticky=E + W) sbListe.config(command=self.lbListe.yview) sbListe.grid(row=vLigne, column=1, sticky=N + S)
def dessineRMD(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vFen = self.fenetre # Composants de la fenêtre Label (vFen,text = "Informations transmission", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 8, sticky = W+E) vLigne += 1 Label (vFen, text = "Groupe Date/Heure : ").grid(row = vLigne, column = 0, sticky = W) self.efGdh = Commun.gdhWidget(vFen, vFen) self.efGdh.grid(row = vLigne, column = 1, sticky = W) self.iGdh = IntVar() self.ckGdh = Checkbutton (vFen, text = "Recalculer le GDH lors de la validation", variable = self.iGdh) self.ckGdh.grid(row = vLigne, column = 3, columnspan = 3, sticky = W) vLigne += 1 Label (vFen, text = "Emis par : ").grid(row = vLigne, column = 0, sticky = W) self.cbEmetteur = Commun.indicatifWidget(vFen, vFen, self.root) self.cbEmetteur.grid (row = vLigne, column = 1, sticky = W) Label (vFen, text = "Reçu par : ").grid(row = vLigne, column = 3, sticky = W) self.cbDestinataire = Commun.indicatifWidget(vFen, vFen, self.root) self.cbDestinataire.grid (row = vLigne, column = 4, sticky = W+E) vLigne += 1 Label (vFen, text = "Instructions particulières : ").grid(row = vLigne, column = 0, sticky = W) self.eInstruc = Entry (vFen) self.eInstruc.grid (row = vLigne, column = 1, columnspan = 4, sticky = W+E) vLigne += 1 Label (vFen, text = "Message Matières Dangereuses", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 8, sticky = W+E) vLigne += 1 Label (vFen,text = "Entête du message", fg = "blue",bg = "cyan").grid(row = vLigne, column = 0,columnspan = 8, sticky = W+E) vLigne += 1 Label (vFen, text = "Origine : ").grid(row = vLigne, column = 0, sticky = W ) self.efOrigine = Pmw.EntryField (vFen, validate = Commun.nonVideValidator) self.efOrigine.grid (row = vLigne, column = 1, sticky = W) vLigne += 1 Label (vFen, text = "Destinataires Action: ").grid(row = vLigne, column = 0, sticky = W) self.efDestAction = Pmw.EntryField (vFen, validate = Commun.nonVideValidator) self.efDestAction.grid (row = vLigne, column = 1, columnspan = 3, sticky = W+E) Label (vFen, text = "(utilisez le / comme séparateur)").grid(row = vLigne, rowspan = 2, column = 4, columnspan = 3, sticky = W) vLigne += 1 Label (vFen, text = "Destinataires Info: ").grid(row = vLigne, column = 0, sticky = W) self.eDestInfo = Entry(vFen) self.eDestInfo.grid (row = vLigne, column = 1, columnspan = 3, sticky = W+E) vLigne += 1 Label (vFen, text = "Degré d'Urgence : ").grid(row = vLigne, column = 0, sticky = W ) self.cbDegUrg = Commun.comboWidget (self.root, vFen, self.root.cfgListe['DegUrgOBNT']) self.cbDegUrg.grid (row = vLigne, column = 1, columnspan = 2, sticky = W) vLigne += 1 Label (vFen,text = "Corps du message", fg = "blue",bg = "cyan").grid( row = vLigne, column = 0,columnspan = 8, sticky = E+W ) vLigne += 1 # Code Danger Label (vFen, text = "Plaque DANGER : " ).grid(row = vLigne, column = 0, rowspan = 2, sticky = W) self.fPlaque = LabelFrame(vFen, bd = 0) self.fPlaque.grid(row = vLigne, column = 1, rowspan = 2, sticky = W) Label (self.fPlaque, text = "Code Danger : " ).grid(row = 0, column = 0, sticky = W) Label (self.fPlaque, text = "Numero ONU : " ).grid(row = 1, column = 0, sticky = W) self.fDanger = LabelFrame(self.fPlaque, bd = 3, relief='flat', bg='black') self.fDanger.grid(row = 0, column = 1, rowspan = 2, sticky = W) self.efDanger = Pmw.EntryField (self.fDanger) self.efDanger.component('entry').config(justify=CENTER, fg='black', bg='orange', width=8) self.efDanger.component('entry').bind('<Key>', Commun.uppercaseKey) self.efDanger.component('hull').configure(borderwidth=2, bg='orange') self.efDanger.configure(validate = {"validator" : Commun.dangerValidator, "max" : 4, "minstrict" : False, "maxstrict" : False}) self.efDanger.grid(row = 0, column = 0, sticky = W) self.efNumOnu = Pmw.EntryField (self.fDanger) self.efNumOnu.component('entry').config(justify=CENTER, fg='black', bg='orange', width=8) self.efNumOnu.component('hull').configure(borderwidth=2, bg='orange') self.efNumOnu.configure(validate = {"validator" : Commun.onuValidator, "max" : 4, "minstrict" : False, "maxstrict" : False}) self.efNumOnu.grid(row = 1, column = 0, sticky = W) vLigne += 2 Label (vFen, text = "Pictogramme LOSANGE : " ).grid(row = vLigne, column = 0, sticky = W) self.fPicto = LabelFrame(vFen, bd = 0) self.fPicto.grid(row = vLigne, column = 1, sticky = W) Label (self.fPicto, text = "(code panneau) " ).grid(row = 0, column = 0, sticky = W) self.cbPanneau = Commun.comboWidget(vFen, self.fPicto, self.root.cfgListe['CodePicto'], 'orange') self.cbPanneau.component('entryfield_entry').config(justify=CENTER, width=6) self.cbPanneau.grid(row = 0, column = 1, sticky = W) vLigne += 1 Label (vFen, text = "Etat de la matière : " ).grid(row = vLigne, column = 0,sticky = W) self.cbEtatMatiere = Commun.comboWidget(vFen, vFen, self.root.cfgListe['EtatMatiere']) self.cbEtatMatiere.grid(row = vLigne, column = 1, sticky = W) Label (vFen, text = "Si 'AUTRE' précier : " ).grid( row = vLigne, column = 3,sticky = W) self.eAutre = Entry (vFen) self.eAutre.grid (row = vLigne,column = 4,sticky = W ) vLigne += 1 Label (vFen, text = "Couleur : " ).grid( row = vLigne, column = 0,sticky = W) self.eCouleur = Entry (vFen) self.eCouleur.grid ( row = vLigne,column = 1,sticky = W ) Label (vFen, text = "Odeur : " ).grid( row = vLigne, column = 3,sticky = W) self.eOdeur = Entry (vFen) self.eOdeur.grid ( row = vLigne,column = 4,sticky = W ) vLigne += 1 Label (vFen, text = "Commentaire(s) : ").grid(row = vLigne, column = 0, sticky = W) self.stComment = ScrolledText (vFen, wrap = "word", height = 5, width = 80) self.stComment.grid (row = vLigne, column = 1, columnspan = 5) vLigne += 10 Label (vFen,text = "Final du message ", fg = "blue",bg = "cyan").grid(row = vLigne, column = 0, columnspan = 6, sticky = E+W) vLigne += 1 Label (vFen, text = "GDH Dépôt/Rédaction : ").grid(row = vLigne, column = 0, sticky = W ) self.efGdhDep = Commun.gdhWidget(vFen, vFen) self.efGdhDep.grid (row = vLigne, column = 1, sticky = W) self.rbACK = Pmw.RadioSelect(vFen, buttontype = "radiobutton",labelpos = W,label_text = "Demande Accusé de Réception : ") self.rbACK.grid(row = vLigne, column = 3, columnspan = 2, sticky = W) self.rbACK.add("Oui") self.rbACK.add("Non") vLigne += 1 Label (vFen,text = "Fin de message", fg = "blue",bg = "orange").grid( row = vLigne, column = 0,columnspan = 8, sticky = E+W ) vLigne += 1 Button (vFen, text = "Valider", command = self.validerMD, fg = "red", underline = 0).grid(row = vLigne, column = 1, padx = 5, pady = 5, sticky = W) Button (vFen, text = "Annuler", command = self.annulerMD, fg = "red", underline = 1).grid(row = vLigne, column = 3, padx = 5, pady = 5, sticky = W) Button (vFen, text = "Quitter", command = self.quitterMD, fg = "red", underline = 0).grid(row = vLigne, column = 5, padx = 5, pady = 5, sticky = W)
def drawGVict(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vFen = self.fenetre # Le label zone cachée "réserve" la place du bouton[0] dans le gridder #Label (vFen,text = "zone cachée", bg = "orange",width=9).grid(row = vLigne, column = 1, sticky = E+W) Label(vFen, text="Stations présentes sur le réseau", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 # 14 boutons "Emetteur" Label(vFen, text="Reçu de :").grid(row=vLigne, column=0) for indice in range(0, 15): bouton = Button(vFen, foreground="red", takefocus=1) # width = 8 bouton.grid(column=indice, row=vLigne, sticky=E + W) # indice+1 bouton.configure(command=lambda x=indice: self.cliquerRecuDe(x)) if indice == 0: bouton.grid_remove() # Suppression du bouton 0 "Tous" self.boutonE.append(bouton) vLigne += 1 # Données des victimes Label(vFen, text="Informations Victime ", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 Label(vFen, text="Groupe Date/Heure : ").grid(row=vLigne, column=0, sticky=W) self.efGdh = Commun.gdhWidget(self.root, vFen) self.efGdh.grid(row=vLigne, column=1, columnspan=2, sticky=W) self.bGdh = Button(vFen, bd=1, fg="blue", text="Forcer", command=self.forcerGDH, underline=0) # , width = 8 self.bGdh.grid(row=vLigne, column=3) vLigne += 1 Label(vFen, text="Emis par : ").grid(row=vLigne, column=0, sticky=W) self.cbEmetteur = Commun.indicatifWidget(self.root, vFen, self.root) self.cbEmetteur.grid(row=vLigne, column=1, columnspan=3, sticky=W) Label(vFen, text="Reçu par : ").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.cbDestinataire = Commun.indicatifWidget(self.root, vFen, self.root) self.cbDestinataire.grid(row=vLigne, column=6, columnspan=3, sticky=W) vLigne += 2 # Victime Label(vFen, text="Num Victime : ").grid(row=vLigne, column=0, sticky=W) self.efNum = Pmw.EntryField(vFen, validate={ "validator": Commun.numValidator, "min": 1, "max": 99999, "minstrict": False, "maxstrict": False }) self.efNum.component('entry').config(width=5) self.efNum.grid(row=vLigne, column=1, sticky=W) self.bNum = Button(vFen, width=8, bd=1, fg="blue", text="Num. Auto", command=self.numAuto, underline=0) self.bNum.grid(row=vLigne, column=2) Label(vFen, text="Age / Date naissance :").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.eAge = Entry(vFen) self.eAge.grid(row=vLigne, column=6, columnspan=2, sticky=W) self.rbSexe = Pmw.RadioSelect(vFen, buttontype="radiobutton", labelpos=W, label_text="Sexe :", pady=0) self.rbSexe.grid(row=vLigne, column=9, columnspan=3, rowspan=2, sticky=N + W) self.rbSexe.add("H") self.rbSexe.add("F") vLigne += 1 Label(vFen, text="Nom - Prénom : ").grid(row=vLigne, column=0, sticky=W) self.eNom = Entry(vFen) self.eNom.grid(row=vLigne, column=1, columnspan=7, sticky=W + E) vLigne += 1 # Détresse Label(vFen, text="Nature : ").grid(row=vLigne, column=0, sticky=W) self.cbNature = Pmw.ComboBox( vFen, scrolledlist_items=self.root.cfgListe['Nature'], listheight=80) self.cbNature.grid(row=vLigne, column=1, columnspan=3, sticky=W) Label(vFen, text="Détresse Vitale : ").grid(row=vLigne, column=4, columnspan=2, sticky=W) self.cbVitale = Pmw.ComboBox( vFen, scrolledlist_items=self.root.cfgListe['Detresse'], listheight=100) self.cbVitale.grid(row=vLigne, column=6, columnspan=3, sticky=W) Label(vFen, text="Tri PMA : ").grid(row=vLigne, column=9, sticky=W) self.cbUrgence = Pmw.ComboBox( vFen, scrolledlist_items=self.root.cfgListe['Urgence'], listheight=100) self.cbUrgence.grid(row=vLigne, column=10, columnspan=3, sticky=W) vLigne += 1 Label(vFen, text="Autre :").grid(row=vLigne, column=0, sticky=W) self.eAutre = Entry(vFen) self.eAutre.grid(row=vLigne, column=1, columnspan=7, sticky=W + E) vLigne += 1 self.bValider = Button(vFen, text="Valider", command=self.validerGVict, fg="red", underline=0) self.bValider.grid(row=vLigne, column=2, columnspan=2, sticky=E + W, padx=5, pady=5) # column = 1 self.bEffacer = Button(vFen, text="Effacer", command=self.effacerGVict, fg="red", underline=0) self.bEffacer.grid(row=vLigne, column=4, columnspan=2, sticky=E + W, padx=5, pady=5) self.bQuitter = Button(vFen, text="Quitter", command=self.quitterGVict, fg="red", underline=0) self.bQuitter.grid(row=vLigne, column=7, columnspan=2, sticky=E + W, padx=5, pady=5) vLigne += 1 # Dernières Vicitmes Label(vFen, text="Liste des Victimes", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=16, sticky=E + W) vLigne += 1 fLog = Frame(vFen) fLog.grid(row=vLigne, column=0, columnspan=16) sbListe = Scrollbar(fLog, orient=VERTICAL) self.lbListe = Listbox(fLog, height=15, width=140, font=self.root.fonteFixe, yscrollcommand=sbListe.set) self.lbListe.grid(row=vLigne, column=0, sticky=E + W) sbListe.config(command=self.lbListe.yview) sbListe.grid(row=vLigne, column=1, sticky=N + S)
def dessineSATER(self): # variables locales vLigne = 1 vFen = self.fenetre # Composants de la fenetre Label (vFen,text = "Informations Transmission ", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 12, sticky = E+W) vLigne += 1 Label (vFen, text = "Groupe Date/Heure : ").grid(row = vLigne, column = 0, sticky = W) self.efGdh = Commun.gdhWidget(vFen, vFen) self.efGdh.grid(row = vLigne, column = 1, sticky = W) self.iGdh = IntVar() self.ckGdh = Checkbutton (vFen, text = "Recalculer le GDH lors de la validation", variable = self.iGdh) self.ckGdh.grid(row = vLigne, column = 3, columnspan = 3, sticky = W) vLigne += 1 Label (vFen, text = "Emis par : ").grid(row = vLigne, column = 0, sticky = W) self.cbEmetteur = Commun.indicatifWidget(vFen, vFen, self.root) self.cbEmetteur.grid (row = vLigne, column = 1, sticky = W) Label (vFen, text = "Reçu par : ").grid(row = vLigne, column = 3, sticky = W) self.cbDestinataire = Commun.indicatifWidget(vFen, vFen, self.root) self.cbDestinataire.grid (row = vLigne, column = 4, sticky = W) vLigne += 1 Label (vFen, text = "Degré d'Urgence : ").grid(row = vLigne, column = 0, sticky = W) self.cbDegUrg = Commun.comboWidget (self.root, vFen, self.root.cfgListe['DegUrgOBNT']) self.cbDegUrg.grid (row = vLigne, column = 1, columnspan = 2, sticky = W) vLigne += 1 Label (vFen, text = "Instructions particulières : ").grid(row = vLigne, column = 0, sticky = W) self.eInstruc = Entry (vFen) self.eInstruc.grid (row = vLigne, column = 1, columnspan = 4, sticky = W+E) vLigne += 1 Label (vFen,text = "Informations Relevé Sater", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 12, sticky = E+W) vLigne += 1 Label (vFen, text = "Système : ").grid(row = vLigne, column = 0, sticky = W) self.cbSysteme = Commun.comboWidget (self.root, vFen, self.root.cfgListe['Systeme']) self.cbSysteme.grid (row = vLigne, column = 1, columnspan = 2, sticky = W) Label (vFen, text = "Datum : ").grid(row = vLigne, column = 3, sticky = W) self.cbDatum = Commun.comboWidget (self.root, vFen, self.root.cfgListe['Datum']) self.cbDatum.grid (row = vLigne, column = 4, columnspan = 2, sticky = W) vLigne += 1 Label (vFen, text = "Coordonnée X :").grid(row = vLigne, column = 0, sticky = W) self.efCoordX = Commun.coordWidget(self.root, vFen) self.efCoordX.grid (row = vLigne, column = 1, sticky = W) Label (vFen, text = "Coordonnée Y :").grid(row = vLigne, column = 3, sticky = W) self.efCoordY = Commun.coordWidget(self.root, vFen) self.efCoordY.grid (row = vLigne, column = 4, sticky = W) vLigne += 1 Label (vFen, text = "Direction du relevé :").grid(row = vLigne, column = 0, sticky = W) self.efDir = Pmw.EntryField (vFen, validate = Commun.nonVideValidator) self.efDir.grid(row = vLigne, column = 1, sticky = W) Label (vFen, text = "Force du signal :").grid(row = vLigne, column = 3, sticky = W) self.eForce = Entry (vFen) self.eForce.grid(row = vLigne, column = 4, sticky = W) vLigne += 1 Label (vFen, text = "Commentaire : " ).grid( row = vLigne, column = 0, sticky = W) self.eTexte = Entry(vFen) self.eTexte.grid ( row = vLigne, column = 1, columnspan = 9, sticky = E+W) vLigne += 1 Label (vFen,text = "Fin de message ", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 12, sticky = E+W) vLigne += 1 Button (vFen, text="Valider", command = self.validerSATER, fg="red", underline = 0).grid(row=vLigne, column=0, padx=5, pady=5) Button (vFen, text="Annuler", command = self.annulerSATER, fg="red", underline = 1).grid(row=vLigne, column=2, padx=5, pady=5) Button (vFen, text="Quitter", command = self.quitterSATER, fg="red", underline = 0).grid(row=vLigne, column=4, padx=5, pady=5)
def dessineBT(self): # variables locales vLigne = 1 # N° de ligne pour le positionnement des composants vNomBouton = "" vIndice = 0 vFen = self.fenetre # Composants de la fenêtre Label(vFen, text="Informations transmission", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=8, sticky=W + E) vLigne += 1 Label(vFen, text="Groupe Date/Heure : ").grid(row=vLigne, column=0, sticky=W) self.efGdh = Commun.gdhWidget(vFen, vFen) self.efGdh.grid(row=vLigne, column=1, sticky=W) self.iGdh = IntVar() self.ckGdh = Checkbutton( vFen, text="Recalculer le GDH lors de la validation", variable=self.iGdh) self.ckGdh.grid(row=vLigne, column=3, columnspan=2, sticky=W) self.ckGdh.select() vLigne += 1 Label(vFen, text="Emis par : ").grid(row=vLigne, column=0, sticky=W) self.cbEmetteur = Commun.indicatifWidget(vFen, vFen, self.root) self.cbEmetteur.grid(row=vLigne, column=1, sticky=W) Label(vFen, text="Reçu par : ").grid(row=vLigne, column=3, sticky=W) self.cbDestinataire = Commun.indicatifWidget(vFen, vFen, self.root) self.cbDestinataire.grid(row=vLigne, column=4, columnspan=4, sticky=W) vLigne += 1 Label(vFen, text="Instructions particulières : ").grid(row=vLigne, column=0, sticky=W) self.eInstruc = Entry(vFen) self.eInstruc.grid(row=vLigne, column=1, columnspan=4, sticky=W + E) vLigne += 1 Label(vFen, text="Message Bilan Temporaire", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=8, sticky=W + E) vLigne += 1 Label(vFen, text="Entête du Message", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=8, sticky=W + E) vLigne += 1 Label(vFen, text="Origine : ").grid(row=vLigne, column=0, sticky=W) self.efOrigine = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efOrigine.grid(row=vLigne, column=1, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Action: ").grid(row=vLigne, column=0, sticky=W) self.efDestAction = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efDestAction.grid(row=vLigne, column=1, columnspan=4, sticky=W + E) Label(vFen, text="(utilisez le / comme séparateur)").grid(row=vLigne, rowspan=2, column=5, columnspan=3, sticky=W) vLigne += 1 Label(vFen, text="Destinataires Info: ").grid(row=vLigne, column=0, sticky=W) self.eDestInfo = Entry(vFen) self.eDestInfo.grid(row=vLigne, column=1, columnspan=4, sticky=W + E) vLigne += 1 Label(vFen, text="Degré d'Urgence : ").grid(row=vLigne, column=0, sticky=W) self.cbDegUrg = Commun.comboWidget(self.root, vFen, self.root.cfgListe['DegUrgOBNT']) self.cbDegUrg.grid(row=vLigne, column=1, columnspan=2, sticky=W) vLigne += 1 Label(vFen, text="Corps du message ", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=8, sticky=W + E) vLigne += 1 Label(vFen, text="Objet : ").grid(row=vLigne, column=0, sticky=W) self.efObjet = Pmw.EntryField(vFen, validate=Commun.nonVideValidator) self.efObjet.grid(row=vLigne, column=1, columnspan=6, sticky=W + E) vLigne += 1 Label(vFen, text="Dépt. Alerté et Touché : ").grid(row=vLigne, column=0, sticky=W) self.eDptAET = Entry(vFen) self.eDptAET.grid(row=vLigne, column=1, sticky=W) Label(vFen, text="Dépt. Touché et Non Alerté : ").grid(row=vLigne, column=3, sticky=W) self.eDptTNA = Entry(vFen) self.eDptTNA.grid(row=vLigne, column=4, sticky=W) Label(vFen, text="Dept. Alerté et Non Touché : ").grid(row=vLigne, column=6, sticky=W) self.eDptANT = Entry(vFen) self.eDptANT.grid(row=vLigne, column=7, sticky=W) vLigne += 1 Label(vFen, text="Plan ORSEC : ").grid(row=vLigne, column=0, sticky=W) self.cbORSEC = Pmw.ComboBox( vFen, scrolledlist_items=self.root.cfgListe['Orsec'], listheight=80) self.cbORSEC.grid(row=vLigne, column=1, columnspan=2, sticky=W) self.cbORSEC.selectitem(0) Label(vFen, text="Portée ORSEC : ").grid(row=vLigne, column=3, sticky=W) self.cbPortee = Pmw.ComboBox( vFen, scrolledlist_items=self.root.cfgListe['Portee'], listheight=80) self.cbPortee.grid(row=vLigne, column=4, columnspan=2, sticky=W) self.cbPortee.selectitem(0) self.rbCrise = Pmw.RadioSelect( vFen, buttontype="radiobutton", labelpos=W, label_text="Cellule de Crise activée : ") self.rbCrise.grid(row=vLigne, column=6, columnspan=2, sticky=W) self.rbCrise.add("Oui") self.rbCrise.add("Non") self.rbCrise.invoke("Non") vLigne += 1 self.notebook = Pmw.NoteBook(vFen) self.notebook.grid(row=vLigne, column=0, columnspan=8, sticky=W + E) self.nbTab1 = self.notebook.add('Bilan') self.nbTab1.grid_columnconfigure(1, weight=2) self.nbTab1.grid_columnconfigure(4, weight=2) self.nbTab1.grid_columnconfigure(7, weight=2) self.nbTab1.grid_columnconfigure(8, weight=2) vLig = 0 Label(self.nbTab1, text="Bilans Humain et Matériel", fg="blue", bg="darkgray").grid(row=vLig, column=0, columnspan=9, sticky=W + E) vLig += 1 Label(self.nbTab1, text="Nb Décédés : ").grid(row=vLig, column=0, sticky=W) self.eDecedes = Entry(self.nbTab1) self.eDecedes.grid(row=vLig, column=1, sticky=W) Label(self.nbTab1, text="Nb Blessés : ").grid(row=vLig, column=3, sticky=W) self.eBlesses = Entry(self.nbTab1) self.eBlesses.grid(row=vLig, column=4, sticky=W) Label(self.nbTab1, text="Nb Déplacés ou Relogés : ").grid(row=vLig, column=6, sticky=W) self.eDeplaces = Entry(self.nbTab1) self.eDeplaces.grid(row=vLig, column=7, sticky=W) vLig += 1 Label(self.nbTab1, text="Nb d'interventions : ").grid(row=vLig, column=0, sticky=W) self.eInterv = Entry(self.nbTab1) self.eInterv.grid(row=vLig, column=1, sticky=W) Label(self.nbTab1, text="Hélitreuillés : ").grid(row=vLig, column=3, sticky=W) self.eHeli = Entry(self.nbTab1) self.eHeli.grid(row=vLig, column=4, sticky=W) Label(self.nbTab1, text="Axe coupés : ").grid(row=vLig, column=6, sticky=W) self.eAxes = Entry(self.nbTab1) self.eAxes.grid(row=vLig, column=7, sticky=W) vLig += 1 Label(self.nbTab1, text="Foyers Privés d'Eau : ").grid(row=vLig, column=0, sticky=W) self.eSansEau = Entry(self.nbTab1) self.eSansEau.grid(row=vLig, column=1, sticky=W) Label(self.nbTab1, text="Foyers Privés Electricité : ").grid(row=vLig, column=3, sticky=W) self.eSansElec = Entry(self.nbTab1) self.eSansElec.grid(row=vLig, column=4, sticky=W) Label(self.nbTab1, text="Foyers Privés Telephone : ").grid(row=vLig, column=6, sticky=W) self.eSansTel = Entry(self.nbTab1) self.eSansTel.grid(row=vLig, column=7, sticky=W) vLig += 1 self.nbTab2 = self.notebook.add('Effectifs') self.nbTab2.grid_columnconfigure(1, weight=2) self.nbTab2.grid_columnconfigure(4, weight=2) self.nbTab2.grid_columnconfigure(7, weight=2) self.nbTab2.grid_columnconfigure(8, weight=2) vLig = 0 Label(self.nbTab2, text="Effectifs Engagés", fg="blue", bg="darkgray").grid(row=vLig, column=0, columnspan=9, sticky=W + E) vLig += 1 Label(self.nbTab2, text="SP Locaux : ").grid(row=vLig, column=0, sticky=W) self.eSPLoc = Entry(self.nbTab2) self.eSPLoc.grid(row=vLig, column=1, sticky=W) Label(self.nbTab2, text="SP Extra zonaux : ").grid(row=vLig, column=3, sticky=W) self.eSPExt = Entry(self.nbTab2) self.eSPExt.grid(row=vLig, column=4, sticky=W) Label(self.nbTab2, text="Militaires Sécurité Civile : ").grid(row=vLig, column=6, sticky=W) self.eMilSC = Entry(self.nbTab2) self.eMilSC.grid(row=vLig, column=7, sticky=W) vLig += 1 Label(self.nbTab2, text="Police/Gendarmerie : ").grid(row=vLig, column=0, sticky=W) self.ePolice = Entry(self.nbTab2) self.ePolice.grid(row=vLig, column=1, sticky=W) Label(self.nbTab2, text="Militaires : ").grid(row=vLig, column=3, sticky=W) self.eArmee = Entry(self.nbTab2) self.eArmee.grid(row=vLig, column=4, sticky=W) Label(self.nbTab2, text="Asso. Sécurité Civile: ").grid(row=vLig, column=6, sticky=W) self.eAssoSC = Entry(self.nbTab2) self.eAssoSC.grid(row=vLig, column=7, sticky=W) vLig += 1 Label(self.nbTab2, text="EDF / GDF : ").grid(row=vLig, column=0, sticky=W) self.eElec = Entry(self.nbTab2) self.eElec.grid(row=vLig, column=1, sticky=W) Label(self.nbTab2, text="France Télecom : ").grid(row=vLig, column=3, sticky=W) self.eTelecom = Entry(self.nbTab2) self.eTelecom.grid(row=vLig, column=4, sticky=W) Label(self.nbTab2, text="DDE/DIR/CG : ").grid(row=vLig, column=6, sticky=W) self.eEquip = Entry(self.nbTab2) self.eEquip.grid(row=vLig, column=7, sticky=W) vLig += 1 self.nbTab3 = self.notebook.add('Moyens') self.nbTab3.grid_columnconfigure(1, weight=2) self.nbTab3.grid_columnconfigure(4, weight=2) self.nbTab3.grid_columnconfigure(7, weight=2) self.nbTab3.grid_columnconfigure(8, weight=2) vLig = 0 Label(self.nbTab3, text="Moyens Matériels Engagés", fg="blue", bg="darkgray").grid(row=vLig, column=0, columnspan=9, sticky=W + E) vLig += 1 Label(self.nbTab3, text="Hélicoptères Sécurité Civile : ").grid(row=vLig, column=0, sticky=W) self.eHeliSC = Entry(self.nbTab3) self.eHeliSC.grid(row=vLig, column=1, sticky=W) Label(self.nbTab3, text="Hélicoptères Militaires : ").grid(row=vLig, column=3, sticky=W) self.eHeliMil = Entry(self.nbTab3) self.eHeliMil.grid(row=vLig, column=4, sticky=W) Label(self.nbTab3, text="Groupes électrogènes : ").grid(row=vLig, column=6, sticky=W) self.eGrpElec = Entry(self.nbTab3) self.eGrpElec.grid(row=vLig, column=7, sticky=W + E) vLig += 1 Label(self.nbTab3, text="Autres : ").grid(row=vLig, column=0, sticky=W) self.eAutres = Entry(self.nbTab3) self.eAutres.grid(row=vLig, column=1, columnspan=3, sticky=W + E) vLig += 1 self.notebook.setnaturalsize() vLigne += 4 Label(vFen, text="Final du message ", fg="blue", bg="cyan").grid(row=vLigne, column=0, columnspan=8, sticky=W + E) vLigne += 1 Label(vFen, text="GDH Dépôt/Rédaction : ").grid(row=vLigne, column=0, sticky=W) self.efGdhDep = Commun.gdhWidget(vFen, vFen) self.efGdhDep.grid(row=vLigne, column=1, sticky=W) self.rbACK = Pmw.RadioSelect( vFen, buttontype="radiobutton", labelpos=W, label_text="Demande Accusé de Réception : ") self.rbACK.grid(row=vLigne, column=4, columnspan=3, sticky=W) self.rbACK.add("Oui") self.rbACK.add("Non") vLigne += 1 Label(vFen, text="Fin de Message ", fg="blue", bg="orange").grid(row=vLigne, column=0, columnspan=8, sticky=W + E) vLigne += 1 Button(vFen, text="Valider", command=self.validerBT, fg="red", underline=0).grid(row=vLigne, column=1, padx=5, pady=5, sticky=W + E) Button(vFen, text="Annuler", command=self.annulerBT, fg="red", underline=1).grid(row=vLigne, column=4, padx=5, pady=5, sticky=W + E) Button(vFen, text="Quitter", command=self.quitterBT, fg="red", underline=0).grid(row=vLigne, column=7, padx=5, pady=5, sticky=W + E)