Example #1
0
    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)
Example #2
0
    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)
Example #3
0
    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)
Example #4
0
    def dessineParam(self, appli):

        # variables locales
        vFen = self.vFen
        # self.reseau = [] # liste des stations du réseau
        # self.reseau.append("TOUS") # la station 0 est "TOUS"
        vLigne = 1

        Label(vFen, text="Gestion de Session", fg="blue",
              bg="orange").grid(row=vLigne,
                                column=0,
                                columnspan=2,
                                sticky=E + W)
        vLigne = vLigne + 1

        # Identification et choix de la session
        Label(vFen, text="Nom de Session :").grid(row=vLigne,
                                                  column=0,
                                                  sticky=W)
        self.efSession = Pmw.EntryField(vFen,
                                        validate={
                                            "min": 9,
                                            "max": 10,
                                            "minstrict": False,
                                            "maxstrict": True
                                        })
        self.efSession.grid(row=vLigne, column=1, sticky=W + E)
        vLigne = vLigne + 1
        Label(vFen, text="Intitulé :").grid(row=vLigne, column=0, sticky=W)
        self.efIntitule = Pmw.EntryField(vFen,
                                         validate={
                                             "min": 5,
                                             "max": 30,
                                             "minstrict": False,
                                             "maxstrict": False
                                         })
        self.efIntitule.grid(row=vLigne, column=1, sticky=W + E)
        vLigne = vLigne + 1
        Label(vFen, text="Activation : ").grid(row=vLigne, column=0, sticky=W)
        self.cbActiv = Commun.comboWidget(vFen, vFen,
                                          appli.cfgListe['Activer'])
        self.cbActiv.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        # Frame contenant les boutons Nouveau/Reprise
        self.fNew = Frame(vFen)
        self.fNew.grid(row=vLigne, column=0, columnspan=2)
        Button(self.fNew,
               text="Nouvelle session",
               command=lambda: self.creerSession(appli),
               fg="blue",
               width=29).grid(row=vLigne, column=0)
        Button(self.fNew,
               text="Reprise de session",
               command=lambda: self.changerSession(appli),
               fg="blue",
               width=29).grid(row=vLigne, column=1)
        vLigne = vLigne + 1

        # Frame contenant les informations de session
        self.fStd = Frame(vFen)
        self.fStd.grid(row=vLigne, column=0, columnspan=2)

        Label(self.fStd, text="Station locale", fg="blue",
              bg="orange").grid(row=vLigne,
                                column=0,
                                columnspan=2,
                                sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fStd, text="Indicatif de votre station : ").grid(row=vLigne,
                                                                    column=0,
                                                                    sticky=W)
        self.efQrz = Pmw.EntryField(self.fStd,
                                    validate={
                                        "validator": Commun.nonVideValidator,
                                        "min": 2,
                                        "max": 8,
                                        "minstrict": False,
                                        "maxstrict": False
                                    })
        self.efQrz.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fStd, text="Localisation (Ville) : ").grid(row=vLigne,
                                                              column=0,
                                                              sticky=W)
        self.efVille = Pmw.EntryField(self.fStd,
                                      validate=Commun.nonVideValidator)
        self.efVille.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fStd, text="Service : ").grid(row=vLigne,
                                                 column=0,
                                                 sticky=W)
        self.eSrv = Entry(self.fStd)
        self.eSrv.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fStd, text="Département : ").grid(row=vLigne,
                                                      column=0,
                                                      sticky=W)
        self.eDept = Entry(self.fStd)
        self.eDept.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fStd, text="Autres paramètres", fg="blue",
              bg="orange").grid(row=vLigne,
                                column=0,
                                columnspan=2,
                                sticky=E + W)
        vLigne = vLigne + 1

        self.iDefFic = IntVar()
        self.ckDefFic = Checkbutton(self.fStd,
                                    text='Modifier les noms de fichiers "log"',
                                    variable=self.iDefFic,
                                    command=self.cocherDefFic)
        self.ckDefFic.grid(row=vLigne, column=0, columnspan=3, sticky=W)
        vLigne = vLigne + 1

        # sous-frame spécifique pour les fichiers CSV
        self.fFic = Frame(self.fStd)
        self.fFic.grid(row=vLigne, column=0, columnspan=2)
        Label(self.fFic, text="Fichier Main Courante :").grid(row=vLigne,
                                                              column=0,
                                                              sticky=W)
        self.eMCI = Entry(self.fFic)
        self.eMCI.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fFic, text="Fichier des Victimes :").grid(row=vLigne,
                                                             column=0,
                                                             sticky=W)
        self.eVict = Entry(self.fFic)
        self.eVict.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fFic, text="Fichier Relevés SATER :").grid(row=vLigne,
                                                               column=0,
                                                               sticky=W)
        self.eSater = Entry(self.fFic)
        self.eSater.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fFic, text="Fichier Cartographie :").grid(row=vLigne,
                                                             column=0,
                                                             sticky=W)
        self.eCarto = Entry(self.fFic)
        self.eCarto.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        self.iDefUrg = IntVar()
        self.ckDefUrg = Checkbutton(
            self.fStd,
            text="Modifier les Degrés d'Urgence des messages",
            variable=self.iDefUrg,
            command=self.cocherDefUrg)
        self.ckDefUrg.grid(row=vLigne, column=0, columnspan=3, sticky=W)
        vLigne = vLigne + 1

        # sous-frame spécifique pour les Degrés d'Urgence
        self.fUrg = Frame(self.fStd)
        self.fUrg.grid(row=vLigne, column=0, columnspan=2)
        Label(self.fUrg, text="Standard OBNT :").grid(row=vLigne,
                                                      column=0,
                                                      sticky=W)
        self.cbUrgOBNT = Commun.comboWidget(vFen, self.fUrg,
                                            appli.cfgListe['DegUrgOBNT'])
        self.cbUrgOBNT.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Demande de Moyens :").grid(row=vLigne,
                                                          column=0,
                                                          sticky=W)
        self.cbUrgDM = Commun.comboWidget(vFen, self.fUrg,
                                          appli.cfgListe['DegUrgOBNT'])
        self.cbUrgDM.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Renseignement MD :").grid(row=vLigne,
                                                         column=0,
                                                         sticky=W)
        self.cbUrgRMD = Commun.comboWidget(vFen, self.fUrg,
                                           appli.cfgListe['DegUrgOBNT'])
        self.cbUrgRMD.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Transport MD :").grid(row=vLigne,
                                                     column=0,
                                                     sticky=W)
        self.cbUrgTMD = Commun.comboWidget(vFen, self.fUrg,
                                           appli.cfgListe['DegUrgOBNT'])
        self.cbUrgTMD.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Bilan d'Ambiance :").grid(row=vLigne,
                                                         column=0,
                                                         sticky=W)
        self.cbUrgAMB = Commun.comboWidget(vFen, self.fUrg,
                                           appli.cfgListe['DegUrgOBNT'])
        self.cbUrgAMB.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Bilan Secouriste :").grid(row=vLigne,
                                                         column=0,
                                                         sticky=W)
        self.cbUrgSEC = Commun.comboWidget(vFen, self.fUrg,
                                           appli.cfgListe['DegUrg'])
        self.cbUrgSEC.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Bilan Temporaire :").grid(row=vLigne,
                                                         column=0,
                                                         sticky=W)
        self.cbUrgBT = Commun.comboWidget(vFen, self.fUrg,
                                          appli.cfgListe['DegUrgOBNT'])
        self.cbUrgBT.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Relevé SATER :").grid(row=vLigne,
                                                      column=0,
                                                      sticky=W)
        self.cbUrgSATER = Commun.comboWidget(vFen, self.fUrg,
                                             appli.cfgListe['DegUrgOBNT'])
        self.cbUrgSATER.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fUrg, text="Point Particulier :").grid(row=vLigne,
                                                          column=0,
                                                          sticky=W)
        self.cbUrgPOI = Commun.comboWidget(vFen, self.fUrg,
                                           appli.cfgListe['DegUrgOBNT'])
        self.cbUrgPOI.grid(row=vLigne, column=1, sticky=E + W)
        vLigne = vLigne + 1

        Label(self.fStd,
              text="Impression automatique des messages : ").grid(row=vLigne,
                                                                  column=0,
                                                                  sticky=W)
        self.rbImpr = Pmw.RadioSelect(self.fStd, buttontype="radiobutton")
        self.rbImpr.grid(row=vLigne, column=1, sticky=E)
        self.rbImpr.add("NON")
        self.rbImpr.add("OUI")
        vLigne = vLigne + 1

        Label(self.fStd,
              text="Impression d'une trace de main courante : ").grid(
                  row=vLigne, column=0, sticky=W)
        self.rbTrace = Pmw.RadioSelect(self.fStd, buttontype="radiobutton")
        self.rbTrace.grid(row=vLigne, column=1, sticky=W)
        self.rbTrace.add("NON")
        self.rbTrace.add("OUI")
        vLigne = vLigne + 1

        Label(self.fStd, text="", fg="blue", bg="orange").grid(row=vLigne,
                                                               column=0,
                                                               columnspan=2,
                                                               sticky=E + W)
        vLigne = vLigne + 1

        Button(self.fStd,
               text="Enregistrer",
               width=14,
               command=lambda: self.enregistrer(appli),
               fg="red").grid(row=vLigne, column=0)
        Button(self.fStd,
               text="Quitter",
               width=14,
               command=lambda: self.vFen.destroy(),
               fg="red").grid(row=vLigne, column=1)
Example #5
0
    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)
Example #6
0
    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)
Example #7
0
    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)
Example #8
0
    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)
Example #9
0
    def drawReseau(self):

        # variables locales
        vFen = self.vFen
        vLigne = 1  # N° de ligne pour le positionnement des composants

        # Frame contenant les informations de session
        Label(vFen, text="Station locale", fg="blue",
              bg="orange").grid(row=vLigne,
                                column=0,
                                columnspan=10,
                                sticky=E + W)
        vLigne += 1

        Label(vFen, text="Votre station : ").grid(row=vLigne,
                                                  column=0,
                                                  columnspan=2,
                                                  sticky=E)
        self.vous = StringVar()
        Label(vFen, textvariable=self.vous,
              font=self.root.fonteFixe).grid(row=vLigne,
                                             column=2,
                                             columnspan=4,
                                             sticky=W)
        vLigne += 1

        Label(vFen, text="Gestion du Réseau", fg="blue",
              bg="orange").grid(row=vLigne,
                                column=0,
                                columnspan=10,
                                sticky=E + W)
        vLigne += 1

        # Frame des stations (uniquement pour gérer l'affichage)
        Label(vFen, text="Indicatif").grid(row=vLigne, column=0, sticky=W)
        Label(vFen, text="Alias Tactique").grid(row=vLigne, column=1, sticky=W)
        Label(vFen, text="Opérateur(s)").grid(row=vLigne, column=2, sticky=W)
        Label(vFen, text="Statut").grid(row=vLigne, column=3, sticky=W)
        Label(vFen, text="Localisation").grid(row=vLigne, column=4, sticky=W)
        Label(vFen, text="X <-- Coordonnées --> Y").grid(row=vLigne,
                                                          column=5,
                                                          columnspan=2,
                                                          sticky=W + E)
        Label(vFen, text="Commentaires").grid(row=vLigne,
                                              column=7,
                                              columnspan=2,
                                              sticky=W + E)
        vLigne += 1

        fLog = Frame(vFen)
        fLog.grid(row=vLigne, column=0, columnspan=10)
        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)
        self.lbListe.bind("<ButtonRelease-1>", self.select)
        self.lbListe.bind("<Double-1>", self.modifier)
        sbListe.config(command=self.lbListe.yview)
        sbListe.grid(row=vLigne, column=1, sticky=N + S)
        vLigne += 6

        fBtn = Frame(vFen)
        fBtn.grid(row=vLigne, column=0, columnspan=10)
        self.pbUp = Button(vFen,
                           text="^",
                           width=3,
                           command=lambda sens="-": self.swap(sens),
                           fg="blue")
        self.pbUp.grid(row=vLigne, column=0, sticky=E)
        self.pbDown = Button(vFen,
                             text="v",
                             width=3,
                             command=lambda sens="+": self.swap(sens),
                             fg="blue")
        self.pbDown.grid(row=vLigne, column=1, sticky=W)
        self.pbUp.grid_remove()  # Caché car non opérationnel
        self.pbDown.grid_remove()  # Caché car non opérationnel
        self.pbAjouter = Button(vFen,
                                text="Ajouter",
                                width=12,
                                command=self.ajouterStation,
                                fg="red",
                                underline=4)
        self.pbAjouter.grid(row=vLigne, column=3)
        self.pbModifier = Button(vFen,
                                 text="Modifier",
                                 width=12,
                                 command=self.modifier,
                                 fg="red",
                                 underline=1)
        self.pbModifier.grid(row=vLigne, column=5)
        self.pbSupprimer = Button(vFen,
                                  text="Supprimer",
                                  width=12,
                                  command=self.supprimer,
                                  fg="red",
                                  underline=0)
        self.pbSupprimer.grid(row=vLigne, column=7)
        vLigne += 1

        texte = Label(vFen, text="").grid(row=vLigne, column=0, sticky=W)
        vLigne += 1

        self.fOpe = LabelFrame(vFen, bd=2)
        self.fOpe.grid(row=vLigne, column=0, columnspan=10, sticky=N + S)
        Label(self.fOpe, text="Info Station", fg="blue",
              bg="orange").grid(row=vLigne,
                                column=0,
                                columnspan=10,
                                sticky=E + W)
        vLigne += 1

        Label(self.fOpe, text="Indicatif").grid(row=vLigne, column=1, sticky=W)
        Label(self.fOpe, text="Alias Tactique").grid(row=vLigne,
                                                     column=2,
                                                     sticky=W)
        Label(self.fOpe, text="Opérateur(s)").grid(row=vLigne,
                                                    column=3,
                                                    sticky=W)
        Label(self.fOpe, text="Statut").grid(row=vLigne, column=4, sticky=W)
        Label(self.fOpe, text="Localisation").grid(row=vLigne,
                                                   column=5,
                                                   sticky=W)
        Label(self.fOpe,
              text="X  <--- Coordonnées --->  Y").grid(row=vLigne,
                                                        column=6,
                                                        columnspan=2,
                                                        sticky=W + E)
        Label(self.fOpe, text="Commentaires").grid(row=vLigne,
                                                   column=8,
                                                   columnspan=2,
                                                   sticky=W)
        vLigne += 1

        self.efIndicatif = Pmw.EntryField(self.fOpe,
                                          validate={
                                              "validator":
                                              Commun.indicatifValidator,
                                              "max": 8,
                                              "maxstrict": False
                                          })
        self.efIndicatif.component('entry').config(width=9)
        self.efIndicatif.component('entry').bind('<Key>', Commun.uppercaseKey)
        self.efIndicatif.grid(row=vLigne, column=1, sticky=E + W)
        self.root.bulle.bind(
            self.efIndicatif,
            "Indicatif de 2 à 8 car., sans espace (tiret, slash et souligné permis)"
        )
        self.efTactic = Pmw.EntryField(self.fOpe,
                                       validate={
                                           "validator": Commun.tacticValidator,
                                           "max": 12,
                                           "maxstrict": False
                                       })
        self.efTactic.component('entry').config(width=13)
        self.efTactic.component('entry').bind('<Key>', Commun.uppercaseKey)
        self.efTactic.grid(row=vLigne, column=2, sticky=E + W)
        self.root.bulle.bind(
            self.efTactic,
            "Alias de 2 à 12 car., sans espace (tiret, slash et souligné permis)"
        )
        self.efOperateurs = Pmw.EntryField(self.fOpe,
                                           validate={
                                               "max": 20,
                                               "maxstrict": False
                                           })
        self.efOperateurs.component('entry').config(width=21)
        self.efOperateurs.grid(row=vLigne, column=3, sticky=E + W)
        self.cbStatut = Commun.comboWidget(self.root, self.fOpe,
                                           self.root.cfgListe['Statut'])
        self.cbStatut.component('entryfield_entry').config(width=13)
        self.cbStatut.grid(row=vLigne, column=4, sticky=W + E)
        self.efLocalis = Pmw.EntryField(self.fOpe,
                                        validate={
                                            "max": 20,
                                            "maxstrict": False
                                        })
        self.efLocalis.component('entry').config(width=21)
        self.efLocalis.grid(row=vLigne, column=5, sticky=E + W)
        self.efPosX = Pmw.EntryField(self.fOpe,
                                     validate={
                                         "max": 12,
                                         "maxstrict": False
                                     })
        self.efPosX.component('entry').config(width=13)
        self.efPosX.grid(row=vLigne, column=6, sticky=E + W)
        self.efPosY = Pmw.EntryField(self.fOpe,
                                     validate={
                                         "max": 12,
                                         "maxstrict": False
                                     })
        self.efPosY.component('entry').config(width=13)
        self.efPosY.grid(row=vLigne, column=7, sticky=E + W)
        self.efComment = Pmw.EntryField(self.fOpe,
                                        validate={
                                            "max": 30,
                                            "maxstrict": False
                                        })
        self.efComment.component('entry').config(width=31)
        self.efComment.grid(row=vLigne, column=8, columnspan=2, sticky=E + W)

        vLigne += 1

        Button(self.fOpe,
               text="Valider",
               width=14,
               command=self.valider,
               fg="red",
               underline=0).grid(row=vLigne, column=3)
        Button(self.fOpe,
               text="Annuler",
               width=14,
               command=self.annuler,
               fg="red",
               underline=1).grid(row=vLigne, column=5)

        self.root.printMenu.add_command(label="Réseau", command=self.imprimer)
Example #10
0
    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)
Example #11
0
    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)
Example #12
0
    def drawSession(self):

        # variables locales
        vLigne = 1

        Label (self, text = "Gestion de Session", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 2, sticky = E+W)
        vLigne += 1

        # Identification et choix de la session
        Label (self, text = "Nom de Session :").grid(row = vLigne, column = 0, sticky = W)
        self.efSession = Pmw.EntryField (self, validate = {"min" : 7, "max" : 10, "minstrict" : False, "maxstrict" : True})
        self.efSession.grid(row = vLigne, column = 1, sticky = W+E)
        vLigne += 1
        Label (self, text = "Intitulé :").grid(row = vLigne, column = 0, sticky = W)
        self.efIntitule = Pmw.EntryField (self, validate = {"min" : 5, "max" : 30, "minstrict" : False, "maxstrict" : False})
        self.efIntitule.grid(row = vLigne, column = 1, sticky = W+E)
        vLigne += 1
        Label (self, text = "Activation : ").grid(row = vLigne, column = 0, sticky = W)
        self.cbActiv = Commun.comboWidget (self.root, self, self.root.cfgListe['Activer'])
        self.cbActiv.grid (row = vLigne, column = 1, sticky = E+W)    
        vLigne += 1

        Label (self, text = "Autres paramètres", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 2, sticky = E+W)
        vLigne += 1

        notebook = Pmw.NoteBook(self)
        notebook.grid(row = vLigne, column = 0, columnspan = 2, sticky = W+E)
        
        # Onglet "Station locale"
        self.nbTab1 = notebook.add('Station locale')

        Label (self.nbTab1,text = "Indicatif : ").grid(row = vLigne, column = 0, sticky = W)
        self.efQrz = Pmw.EntryField(self.nbTab1, validate = {"validator" : Commun.nonVideValidator, "min" : 2, "max" : 8, "minstrict" : False, "maxstrict" : False})
        self.efQrz.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab1,text = "Service : ").grid(row = vLigne, column = 0, sticky = W)
        self.eSrv = Entry (self.nbTab1)
        self.eSrv.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab1,text = "Localisation (Ville) : ").grid(row = vLigne, column = 0, sticky = W)
        self.efVille = Pmw.EntryField(self.nbTab1, validate = Commun.nonVideValidator)
        self.efVille.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab1, text = "Département : ").grid(row = vLigne, column = 0, sticky = W)
        self.eDept = Entry(self.nbTab1)
        self.eDept.grid (row = vLigne, column = 1, sticky = E+W)    
        vLigne += 1

        # Onglet "Fichiers LOG"
        self.nbTab2 = notebook.add('Fichiers LOG')
        
        Label (self.nbTab2,text = "Main Courante :").grid(row = vLigne, column = 0, sticky = W)
        self.eMCI = Entry (self.nbTab2)
        self.eMCI.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab2,text = "Liste des Victimes :").grid(row = vLigne, column = 0, sticky = W)
        self.eVict = Entry (self.nbTab2)
        self.eVict.grid (row = vLigne, column = 1,sticky = E+W)
        vLigne += 1

        Label (self.nbTab2,text = "Relevés SATER :").grid(row = vLigne, column = 0, sticky = W)
        self.eSater = Entry (self.nbTab2)
        self.eSater.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab2,text = "Données Carto. :").grid(row = vLigne, column = 0, sticky = W)
        self.eCarto = Entry (self.nbTab2)
        self.eCarto.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        # Onglet "Urgence Msg"
        self.nbTab3 = notebook.add("Urgence Msg")
        
        Label (self.nbTab3,text = "Standard OBNT :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgOBNT = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgOBNT.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Demande de Moyens :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgDM = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgDM.grid (row = vLigne, column = 1,sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Renseignement MD :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgRMD = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgRMD.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Transport MD :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgTMD = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgTMD.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Bilan d'Ambiance :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgAMB = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgAMB.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Bilan Secouriste :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgSEC = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrg'])
        self.cbUrgSEC.grid (row = vLigne, column = 1,sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Bilan Temporaire :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgBT = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgBT.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Relevé SATER :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgSATER = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgSATER.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        Label (self.nbTab3,text = "Point Particulier :").grid(row = vLigne, column = 0, sticky = W)
        self.cbUrgPOI = Commun.comboWidget (self.root, self.nbTab3, self.root.cfgListe['DegUrgOBNT'])
        self.cbUrgPOI.grid (row = vLigne, column = 1, sticky = E+W)
        vLigne += 1

        # Onglet "Impression"
        self.nbTab4 = notebook.add("Impression")
        
        Label (self.nbTab4, text = "Impr. automatique des journaux : ").grid(row = vLigne, column = 0, sticky = W)
        self.rbImprLog = Pmw.RadioSelect(self.nbTab4, buttontype = "radiobutton")
        self.rbImprLog.grid(row = vLigne, column = 1, sticky = E)
        self.rbImprLog.add("NON")
        self.rbImprLog.add("OUI")
        vLigne += 1
        
        Label (self.nbTab4, text = "Impr. automatique des messages : ").grid(row = vLigne, column = 0, sticky = W)
        self.rbImprMsg = Pmw.RadioSelect(self.nbTab4, buttontype = "radiobutton")
        self.rbImprMsg.grid(row = vLigne, column = 1, sticky = E)
        self.rbImprMsg.add("NON")
        self.rbImprMsg.add("OUI")
        vLigne += 1

        Label (self.nbTab4, text = "Trace de main courante : ").grid(row = vLigne, column = 0, sticky = W)
        self.rbTrace = Pmw.RadioSelect(self.nbTab4, buttontype = "radiobutton")
        self.rbTrace.grid(row = vLigne, column = 1, sticky = W)
        self.rbTrace.add("NON")
        self.rbTrace.add("OUI")
        vLigne += 1

        notebook.setnaturalsize()
        Label (self, text = "", fg = "blue",bg = "orange").grid(row = vLigne, column = 0, columnspan = 2, sticky = E+W)
        vLigne += 1

        Button (self, text = "Enregistrer", width = 14, command = self.saveSession, fg = "red").grid (row = vLigne, column = 0)
        Button (self, text = "Quitter", width = 14, command = self.destroy, fg = "red").grid (row = vLigne, column = 1)