def Mesurer_distance(self, event): from Dlg import DLG_Mesure_distance dictParametres = { "IDfamille": self.ctrl_loueur.GetIDfamille(), "IDproduit": self.ctrl_produit.GetIDproduit(), "IDcategorie": self.ctrl_produit.GetIDcategorie(), } dlg = DLG_Mesure_distance.Dialog(self, dictParametres=dictParametres) dlg.ShowModal() dlg.Destroy()
def Mesurer_distance(self, event): # Recherche la destination categories = self.notebook.GetPage( "criteres").ctrl_categories.listeDonnees produits = self.notebook.GetPage("criteres").ctrl_produits.listeDonnees # Si aucune catégorie sélectionnée if len(categories) == 0 and len(produits) == 0: dlg = wx.MessageDialog( self, _(u"Vous devez d'abord sélectionner renseigner une catégorie ou un produit dans les critères !" ), _(u"Erreur de saisie"), wx.OK | wx.ICON_EXCLAMATION) dlg.ShowModal() dlg.Destroy() return False # Si une seule catégorie sélectionnée if len(categories) == 1: IDcategorie = categories[0][0] else: IDcategorie = None # Si un seul produit sélectionné if len(produits) == 1: IDproduit = produits[0][0] else: IDproduit = None if len(categories) > 1 or len(produits) > 1: liste_donnees = [] liste_labels = [] for donnees in categories: liste_donnees.append(("categories", donnees[0], donnees)) liste_labels.append(u"%s (categorie de produits)" % donnees[1]) for donnees in produits: liste_donnees.append(("produits", donnees[0], donnees)) liste_labels.append(u"%s (produit)" % donnees[1]) dlg = wx.SingleChoiceDialog( self, _(u"Sélectionnez la donnée qui vous intéresse :"), _(u"Sélection d'une donnée"), liste_labels, wx.CHOICEDLG_STYLE) if dlg.ShowModal() == wx.ID_OK: dlg.Destroy() donnees = liste_donnees[dlg.GetSelection()] if donnees[0] == "categories": IDcategorie = donnees[1] if donnees[0] == "produits": IDproduit = donnees[1] IDcategorie = donnees[2][2] else: dlg.Destroy() return False # DLG Mesure de la distance from Dlg import DLG_Mesure_distance dictParametres = { "IDfamille": self.ctrl_loueur.GetIDfamille(), "IDcategorie": IDcategorie, "IDproduit": IDproduit, } dlg = DLG_Mesure_distance.Dialog(self, dictParametres=dictParametres) dlg.ShowModal() dlg.Destroy()