def __init__(self, parent, fournisseur=None): wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, style=wx.TAB_TRAVERSAL) #permet de faire un validate sur tout les panels self.SetExtraStyle(wx.WS_EX_VALIDATE_RECURSIVELY) if fournisseur: self.fournisseur = fournisseur else: self.fournisseur = Fournisseur() self.notebook = wx.Notebook(self, -1, style=0) self.notebook_p1 = wx.Panel(self.notebook, -1) self.notebook_p2 = wx.Panel(self.notebook, -1) #self.sizer_adhesions_staticbox = wx.StaticBox(self.notebook_p4, -1, u"Types d'adhésion") #self.label_description_adhesions = wx.StaticText(self.notebook_p4, -1, u"Ce sont les différentes formules disponibles pour adhérer à l'association.") self.panel_fournisseur = FicheFournisseurBase(self.notebook_p1, self.fournisseur) self.panel_gestion_referents = GestionReferents( self.notebook_p2, self.fournisseur) self.bouton_ok = wx.Button(self, wx.ID_OK, "") self.bouton_annuler = wx.Button(self, wx.ID_CANCEL, "Annuler") self.bouton_ok.Bind(wx.EVT_BUTTON, self.OnEnregistre) self.Bind(wx.EVT_WINDOW_DESTROY, self.OnClose) self.__set_properties() self.__do_layout()
def __init__(self, parent, fournisseur=None): wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, style=wx.TAB_TRAVERSAL) #permet de faire un validate sur tout les panels self.SetExtraStyle(wx.WS_EX_VALIDATE_RECURSIVELY) if fournisseur: self.fournisseur = fournisseur else: self.fournisseur = Fournisseur() self.notebook = wx.Notebook(self, -1, style=0) self.notebook_p1 = wx.Panel(self.notebook, -1) self.notebook_p2 = wx.Panel(self.notebook, -1) #self.sizer_adhesions_staticbox = wx.StaticBox(self.notebook_p4, -1, u"Types d'adhésion") #self.label_description_adhesions = wx.StaticText(self.notebook_p4, -1, u"Ce sont les différentes formules disponibles pour adhérer à l'association.") self.panel_fournisseur = FicheFournisseurBase(self.notebook_p1, self.fournisseur) self.panel_gestion_referents = GestionReferents(self.notebook_p2, self.fournisseur) self.bouton_ok = wx.Button(self, wx.ID_OK, "") self.bouton_annuler = wx.Button(self, wx.ID_CANCEL, "Annuler") self.bouton_ok.Bind(wx.EVT_BUTTON, self.OnEnregistre) self.Bind(wx.EVT_WINDOW_DESTROY, self.OnClose) self.__set_properties() self.__do_layout()
def __remplissage_liste_fournisseur(self): try: fournisseurs = Fournisseur.select().order_by(Fournisseur.nom.asc()) for fournisseur in fournisseurs: self.combo_box_SelectionFournisseur.Append(fournisseur.nom, fournisseur) self.combo_box_SelectionFournisseur.Select(0) except BaseException as ex: print ex
def __remplissage_liste_fournisseur(self): try: fournisseurs = Fournisseur.select().order_by(Fournisseur.nom.asc()) for fournisseur in fournisseurs: self.combo_box_SelectionFournisseur.Append( fournisseur.nom, fournisseur) self.combo_box_SelectionFournisseur.Select(0) except BaseException as ex: print ex
def __remplissage_liste(self): try: requete = Fournisseur.select().where(~(Fournisseur.id << self.adherent.fournisseurs)) self.liste_fournisseurs.SetObjects([f for f in requete]) #On dimentionne le dialog selon la largeur des colonnes largeur = 0 for num_colonne in range(1) : largeur += self.liste_fournisseurs.GetColumnWidth(num_colonne) self.liste_fournisseurs.SetMinSize((largeur+20,300)) except BaseException as ex: print ex
def __remplissage_liste(self): try: self.liste_produits.SetObjects([p for p in Produit.select()]) self.combo_box_Fournisseur.Append("Tous", 0) fournisseurs = [f for f in Fournisseur.select().order_by(Fournisseur.nom.asc())] for fournisseur in fournisseurs: self.combo_box_Fournisseur.Append(fournisseur.nom, fournisseur.get_id()) self.combo_box_Fournisseur.Select(0) except BaseException as ex: print ex
def __remplissage_liste(self): try: self.liste_lignes_inventaire.SetObjects([li for li in self.inventaire.lignes_inventaire]) self.combo_box_fournisseur.Append("Tous", 0) fournisseurs = [f for f in Fournisseur.select().order_by(Fournisseur.nom.asc())] for fournisseur in fournisseurs: self.combo_box_fournisseur.Append(fournisseur.nom, fournisseur.get_id()) self.combo_box_fournisseur.Select(0) except BaseException as ex: print ex
def __remplissage_liste(self): try: requete = Fournisseur.select().where( ~(Fournisseur.id << self.adherent.fournisseurs)) self.liste_fournisseurs.SetObjects([f for f in requete]) #On dimentionne le dialog selon la largeur des colonnes largeur = 0 for num_colonne in range(1): largeur += self.liste_fournisseurs.GetColumnWidth(num_colonne) self.liste_fournisseurs.SetMinSize((largeur + 20, 300)) except BaseException as ex: print ex
def __set_comboboxs(self): #TODO: Faire système de verification en cas de non existance de fournisseur/categorie/tva try: categories = [c for c in Categorie.select().order_by(Categorie.nom.asc())] for c in categories: self.combo_box_Categorie.Append(str(c.get_id()).zfill(2) + " - " + c.nom, c) fournisseurs = [f for f in Fournisseur.select().order_by(Fournisseur.nom.asc())] for fournisseur in fournisseurs: self.combo_box_Fournisseur.Append(fournisseur.nom, fournisseur) tvas = [t for t in Tva.select().order_by(Tva.taux.asc())] for tva in tvas: self.combo_box_TVA.Append(str(tva.taux), tva) except BaseException as ex: print ex
def __init__(self, parent, fournisseur=None): wx.Panel.__init__(self, parent, style=wx.TAB_TRAVERSAL) if fournisseur == None: fournisseur = Fournisseur() self.fournisseur = fournisseur self.label_Nom = wx.StaticText(self, -1, "Nom :") self.text_Nom = wx.TextCtrl(self, -1, "", validator=GenericTextValidator()) self.label_Adresse = wx.StaticText(self, -1, "Adresse :") self.text_Adresse = wx.TextCtrl(self, -1, "", validator=GenericTextValidator()) self.label_CodePostal = wx.StaticText(self, -1, "Code Postal :") self.text_CodePostal = wx.TextCtrl( self, -1, "", validator=GenericTextValidator(flag=VALIDATE_INT)) self.label_Ville = wx.StaticText(self, -1, "Ville :") self.text_Ville = wx.TextCtrl(self, -1, "", validator=GenericTextValidator()) self.label_TelephoneFixe = wx.StaticText(self, -1, u"Tel fixe :") self.text_TelephoneFixe = wx.TextCtrl(self, -1, "") self.label_TelephonePortable = wx.StaticText(self, -1, u"Tel portable :") self.text_TelephonePortable = wx.TextCtrl(self, -1, "") self.label_Email = wx.StaticText(self, -1, "Email :") self.text_Email = wx.TextCtrl(self, -1, "", validator=EmailValidator()) self.label_NomContact = wx.StaticText(self, -1, "Nom du contact :") self.text_NomContact = wx.TextCtrl(self, -1, "") self.label_Remarques = wx.StaticText(self, -1, "Remarques :") self.text_Remarques = wx.TextCtrl(self, -1, "", style=wx.TE_MULTILINE) self.label_Couleur = wx.StaticText(self, -1, "Couleur :") self.button_Couleur = wx.Button(self, -1, "Choix de la couleur") self.text_Couleur = wx.TextCtrl(self, -1, "", style=wx.TE_READONLY) self.__set_properties() self.__do_layout() self.__set_valeurs() self.button_Couleur.Bind(wx.EVT_BUTTON, self.selectionCouleur)
def __set_comboboxs(self): #TODO: Faire système de verification en cas de non existance de fournisseur/categorie/tva try: categories = [ c for c in Categorie.select().order_by(Categorie.nom.asc()) ] for c in categories: self.combo_box_Categorie.Append( str(c.get_id()).zfill(2) + " - " + c.nom, c) fournisseurs = [ f for f in Fournisseur.select().order_by(Fournisseur.nom.asc()) ] for fournisseur in fournisseurs: self.combo_box_Fournisseur.Append(fournisseur.nom, fournisseur) tvas = [t for t in Tva.select().order_by(Tva.taux.asc())] for tva in tvas: self.combo_box_TVA.Append(str(tva.taux), tva) except BaseException as ex: print ex
def __remplissage_liste(self): try: self.liste_fournisseurs.SetObjects( [f for f in Fournisseur.select()]) except BaseException as ex: print ex
def __remplissage_liste(self): try: self.liste_fournisseurs.SetObjects([f for f in Fournisseur.select()]) except BaseException as ex: print ex
class FicheFournisseur(wx.Panel): def __init__(self, parent, fournisseur=None): wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, style=wx.TAB_TRAVERSAL) #permet de faire un validate sur tout les panels self.SetExtraStyle(wx.WS_EX_VALIDATE_RECURSIVELY) if fournisseur: self.fournisseur = fournisseur else: self.fournisseur = Fournisseur() self.notebook = wx.Notebook(self, -1, style=0) self.notebook_p1 = wx.Panel(self.notebook, -1) self.notebook_p2 = wx.Panel(self.notebook, -1) #self.sizer_adhesions_staticbox = wx.StaticBox(self.notebook_p4, -1, u"Types d'adhésion") #self.label_description_adhesions = wx.StaticText(self.notebook_p4, -1, u"Ce sont les différentes formules disponibles pour adhérer à l'association.") self.panel_fournisseur = FicheFournisseurBase(self.notebook_p1, self.fournisseur) self.panel_gestion_referents = GestionReferents(self.notebook_p2, self.fournisseur) self.bouton_ok = wx.Button(self, wx.ID_OK, "") self.bouton_annuler = wx.Button(self, wx.ID_CANCEL, "Annuler") self.bouton_ok.Bind(wx.EVT_BUTTON, self.OnEnregistre) self.Bind(wx.EVT_WINDOW_DESTROY, self.OnClose) self.__set_properties() self.__do_layout() # end wxGlade def __set_properties(self): #On affiche pas les panneaux secondaires pour un nouveau fournisseur if not self.fournisseur.get_id(): self.notebook_p2.Hide() def __do_layout(self): sizer = wx.BoxSizer(wx.VERTICAL) sizer_p1 = wx.BoxSizer(wx.VERTICAL) sizer_p2 = wx.BoxSizer(wx.VERTICAL) sizer_p1.Add(self.panel_fournisseur, 1, wx.ALL|wx.EXPAND, 5) self.notebook_p1.SetSizer(sizer_p1) sizer_p2.Add(self.panel_gestion_referents, 1, wx.ALL|wx.EXPAND, 5) self.notebook_p2.SetSizer(sizer_p2) self.notebook.AddPage(self.notebook_p1, u"Fournisseur") self.notebook.AddPage(self.notebook_p2, u"Référents") sizer_boutons = wx.BoxSizer(wx.HORIZONTAL) sizer_boutons.Add((20, 20), 1, 0, 0) sizer_boutons.Add(self.bouton_ok, 0, 0, 0) sizer_boutons.Add((20, 20), 1, 0, 0) sizer_boutons.Add(self.bouton_annuler, 0, 0, 0) sizer_boutons.Add((20, 20), 1, 0, 0) sizer.Add(self.notebook, 1, wx.ALL|wx.EXPAND, 5) sizer.Add(sizer_boutons, 0, wx.TOP|wx.BOTTOM|wx.EXPAND, 10) self.SetSizer(sizer) sizer.Fit(self) def GetFournisseur(self): return self.fournisseur def OnEnregistre(self, event): if self.Validate(): self.panel_fournisseur.Enregistre() DATABASE.commit() event.Skip() else: control = wx.Window.FindFocus() self.notebook.ChangeSelection(0) control.SetFocus() def OnClose(self, event): DATABASE.rollback() event.Skip()
class FicheFournisseur(wx.Panel): def __init__(self, parent, fournisseur=None): wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, style=wx.TAB_TRAVERSAL) #permet de faire un validate sur tout les panels self.SetExtraStyle(wx.WS_EX_VALIDATE_RECURSIVELY) if fournisseur: self.fournisseur = fournisseur else: self.fournisseur = Fournisseur() self.notebook = wx.Notebook(self, -1, style=0) self.notebook_p1 = wx.Panel(self.notebook, -1) self.notebook_p2 = wx.Panel(self.notebook, -1) #self.sizer_adhesions_staticbox = wx.StaticBox(self.notebook_p4, -1, u"Types d'adhésion") #self.label_description_adhesions = wx.StaticText(self.notebook_p4, -1, u"Ce sont les différentes formules disponibles pour adhérer à l'association.") self.panel_fournisseur = FicheFournisseurBase(self.notebook_p1, self.fournisseur) self.panel_gestion_referents = GestionReferents( self.notebook_p2, self.fournisseur) self.bouton_ok = wx.Button(self, wx.ID_OK, "") self.bouton_annuler = wx.Button(self, wx.ID_CANCEL, "Annuler") self.bouton_ok.Bind(wx.EVT_BUTTON, self.OnEnregistre) self.Bind(wx.EVT_WINDOW_DESTROY, self.OnClose) self.__set_properties() self.__do_layout() # end wxGlade def __set_properties(self): #On affiche pas les panneaux secondaires pour un nouveau fournisseur if not self.fournisseur.get_id(): self.notebook_p2.Hide() def __do_layout(self): sizer = wx.BoxSizer(wx.VERTICAL) sizer_p1 = wx.BoxSizer(wx.VERTICAL) sizer_p2 = wx.BoxSizer(wx.VERTICAL) sizer_p1.Add(self.panel_fournisseur, 1, wx.ALL | wx.EXPAND, 5) self.notebook_p1.SetSizer(sizer_p1) sizer_p2.Add(self.panel_gestion_referents, 1, wx.ALL | wx.EXPAND, 5) self.notebook_p2.SetSizer(sizer_p2) self.notebook.AddPage(self.notebook_p1, u"Fournisseur") self.notebook.AddPage(self.notebook_p2, u"Référents") sizer_boutons = wx.BoxSizer(wx.HORIZONTAL) sizer_boutons.Add((20, 20), 1, 0, 0) sizer_boutons.Add(self.bouton_ok, 0, 0, 0) sizer_boutons.Add((20, 20), 1, 0, 0) sizer_boutons.Add(self.bouton_annuler, 0, 0, 0) sizer_boutons.Add((20, 20), 1, 0, 0) sizer.Add(self.notebook, 1, wx.ALL | wx.EXPAND, 5) sizer.Add(sizer_boutons, 0, wx.TOP | wx.BOTTOM | wx.EXPAND, 10) self.SetSizer(sizer) sizer.Fit(self) def GetFournisseur(self): return self.fournisseur def OnEnregistre(self, event): if self.Validate(): self.panel_fournisseur.Enregistre() DATABASE.commit() event.Skip() else: control = wx.Window.FindFocus() self.notebook.ChangeSelection(0) control.SetFocus() def OnClose(self, event): DATABASE.rollback() event.Skip()